Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JS] Dynamiczne obliczenia
enqis
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 21.05.2012
Skąd: Wrocław/Bydgoszcz

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


Witam
Chciałem się zapytać o taka sprawę. Mianowicie mam :
Kod
function przekaz(pole){
var a = document.getElementById(pole.id).value;
document.getElementById(pole.id+"info").innerHTML = a * 3;
}

function Init(){
var inpt = document.getElementById("inpt");
    inpt.onblur = function(){
        przekaz(this);
    }
}
window.onload = Init;

I jak wpisuje w tym inpucie liczbę to dopiero po kliknięciu gdzieś wartość jest przekazywana do elementu z id pole+"info". Jest jakaś opcja, żeby te dane nie czekały aż użytkownik gdzieś kliknie ? Próbowałem, onchange ale ten sam efekt.
Dziękuję i pozdrawiam.
Go to the top of the page
+Quote Post
Sephirus
post
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

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


[JAVASCRIPT] pobierz, plaintext
  1. function Init(){
  2. var inpt = document.getElementById("inpt");
  3. inpt.onkeyup= function(){
  4. przekaz(this);
  5. }
  6. }
  7. window.onload = Init;
[JAVASCRIPT] pobierz, plaintext


(IMG:style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
kamil4u
post
Post #3





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

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


ew. onkeydown lub onkeypress . Ale nie dlatego piszę.

Masz funkcję:
Kod
function przekaz(pole){
var a = document.getElementById(pole.id).value;
document.getElementById(pole.id+"info").innerHTML = a * 3;
}


Jako argument pole przekazujesz referencję do elementu. document.getElementById zwraca referencję do elementu. Łącząc te 2 stwierdzenia otrzymujesz:
var a = document.getElementById(pole.id).value;
->
var a = pole.value;

Warto też użyć w tym miejscu parseInt lub parseFloat
Go to the top of the page
+Quote Post
enqis
post
Post #4





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 21.05.2012
Skąd: Wrocław/Bydgoszcz

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


Szczerze nie próbowałem onkeydown/up ani onkeypress bo wydaje mi sie ze one wywolaja funkcję jeszcze zanim użytkownik cokolwiek wpisze.
Go to the top of the page
+Quote Post
kamil4u
post
Post #5





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

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


Przetestuj sobie. onkeydown jest przed wpisaniem, onkeyup po wpisaniu. Zrób testy to będziesz wiedział (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
enqis
post
Post #6





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 21.05.2012
Skąd: Wrocław/Bydgoszcz

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


Dobra, działa. Bardzo wam obu panowie dziękuję.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.08.2025 - 09:10