Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript]Dzielenie stringa i zapis do zmiennej
Sklep102
post 24.05.2020, 13:55:04
Post #1





Grupa: Zarejestrowani
Postów: 56
Pomógł: 0
Dołączył: 5.12.2019

Ostrzeżenie: (0%)
-----


Cześć,
Może mi ktoś wyjaśnić w jaki sposób można podzielić tekst i zapisać do zmiennej? mam coś takiego:



  1.  
  2. var czas = document.getElementById("test").value;
  3. var podziel = czas.split(":");
  4. for(var i = 0; i < podziel.length; i++){
  5. var godziny = podziel[i];
  6. var minuty = podziel[i];
  7. var sekundy = podziel[i];
  8. alert(podziel[i]);
  9. }

i nie wiem w jaki sposób przypisać to do zmiennych, alert wyświetla się poprawnie.
Go to the top of the page
+Quote Post
viking
post 24.05.2020, 14:08:14
Post #2





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


  1. var godzina, minuta, sekunda;
  2. var czas = '22:05:12';
  3. [godzina, minuta, sekunda] = czas.split(':');
  4. console.log(godzina, minuta, sekunda);


https://developer.mozilla.org/en-US/docs/We...ring_assignment

Ten post edytował viking 24.05.2020, 14:08:34


--------------------
Go to the top of the page
+Quote Post
Sklep102
post 30.05.2020, 17:55:07
Post #3





Grupa: Zarejestrowani
Postów: 56
Pomógł: 0
Dołączył: 5.12.2019

Ostrzeżenie: (0%)
-----


Cześć,
Dzięki za pomoc viking, mam pytanie odnośnie jeszcze fokusu na element a dokładnie chodzi o to że po zmianie w polu input pobiera wartość i przelicza na sekundy. Mam tylko problem ponieważ po załadowaniu strony nie działa ten skrypt jeśli kliknę raz jeszcze i zmienię to wszystko zaczyna działać. Pytanie dlaczego dopiero po kliknięciu 2 raz w input i zmianie dopiero działa a nie za pierwszym razem? co powinienem zmienić?


  1. <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
  2.  
  3. <script language="javascript">
  4.  
  5.  
  6. function gettim(){
  7. $("#test").bind("propertychange change keyup paste input", function(){
  8.  
  9. var hours, minutes, seconds;
  10. var czas = document.getElementById("test").value;
  11. [hours, minutes, seconds] = czas.split(':');
  12. console.log (hours, minutes, seconds);
  13.  
  14. var cm;
  15. cm = hours * (60 * 60) + minutes * 60 + seconds * 1;
  16. console.log (cm);
  17.  
  18. if(isNaN(cm)){
  19. cm = "00:00:05"
  20. }
  21.  
  22. var cos = $("input[name='time']");
  23. cos.val(cm);
  24.  
  25.  
  26. });
  27. }
  28.  
  29.  
  30.  
  31. </script>
  32.  
  33. <form name="frm">
  34. <input type="time" name="short_time" id="test" step="1" value="00:00:00" max="05:00:00" style="border-radius: 25px; width:35%; text-align:center" onblur="gettim()">
  35. <input onClick="time;" name="time" type="hidden" value=""/>
  36.  
  37. <input onClick="gettim();" type="button" value="Calculate" name="button" />
  38.  
  39. </form>
Go to the top of the page
+Quote Post
viking
post 30.05.2020, 18:23:37
Post #4





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


Po pierwsze bind jest dawno przestarzałe. Powinieneś stosowac on(). Po drugie DOM nie jest załadowany a już coś do niego przypinasz. https://api.jquery.com/ready/


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.03.2024 - 09:13