Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript] czym zastąpić onkeyup + onclick ?
ewelinac18
post
Post #1





Grupa: Zarejestrowani
Postów: 99
Pomógł: 0
Dołączył: 11.07.2007

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


Witam w jaki sposób mogę uzyskać taki sam efekt onkeyup + onclick używając innego polecenia

JS
Kod
function chEmail(Type) {
    var fieldset = Type.parentNode;
    var txt = Type.value;
    if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(txt)) {
        fieldset.className = "welldone";
    } else {
        fieldset.className = "error";
    }
}


HTML
  1. <label for="email">Email:</label>
  2. type="text"
  3. id="email"
  4. onclick="chEmail(this);"
  5. onkeyup="chEmail(this);"
  6. />
  7. <span class="hints">Upewnij sie, iż podałeś poprawny email !</span>



czy muszę dodawać onclick="..." onkeyup="..." czy jest może jakaś inna dobra metoda ?
Go to the top of the page
+Quote Post
Quantum
post
Post #2





Grupa: Zarejestrowani
Postów: 450
Pomógł: 84
Dołączył: 27.11.2008
Skąd: Warszawa

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


zdarzenie onchange, funkcja podczepiona inicjowana byłaby po kliknięciu w inny element strony niż ten (tylko gdy zmieniłaby się zawartość pola), co więcej praktycznie każda strona stosująca takie rozwiązanie używa onchange. (IMG:style_emoticons/default/winksmiley.jpg)

Jeżeli nie chcesz dołączać takiego kodu w html, możesz podpiąć zdarzenie pod element w JS:

[JAVASCRIPT] pobierz, plaintext
  1. window.onload = function()
  2. {
  3. document.getElementById('email').onchange = chEmail;
  4. }
[JAVASCRIPT] pobierz, plaintext


ps. w funkcji chEmail w tym wypadku będziesz musiała usunąć parametr Type, bo JS podstawi tam obiekt Event, do elementu można nadal odwoływać się słowem this.

Ten post edytował sniffer32 7.03.2010, 18:04:05
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: 25.08.2025 - 20:15