Przepraszam. Pozwól mi przeformułować:

Chcę, aby JS zmienić na klasę pola wejściowego, jeśli pozostanie puste; Oto mój kod, aby wykryć puste pole:

function validateForm()
{
    var ctrl = document.forms["form1"]["username"];
    var x=ctrl.value;
    if (x==null || x=="") {
////////////CHANGE INPUT CLASS/////////////   
    }
    else {
    document.getElementById('username').style.backgroundColor="#FFFFFF";      
    }
}

Byłbym musiał CSS klasy:

.inputfield {
background-color:white;
}

.inputfieldempty {
background-color:red;
}
-1
SebastianOpperman 30 wrzesień 2011, 11:44

3 odpowiedzi

Najlepsza odpowiedź

Aby zapobiec przesyłaniu, musisz zadzwonić do funkcji dla zdarzenia OnSubmitu formularza (np onsubmit="return checkFields()". W funkcji wykonasz walidacje i zwrócisz true lub false w zależności od tego nie zostanie opublikowany.

W ramach walidacji, gdy określasz, że wartość pola jest pusta, możesz również wykonać żądane zmiany CSS. Nie wiem, czy używasz wanilii JavaScript lub biblioteki, takich jak jQuery, aby podać bardziej szczegółowe informacje.

0
CyberDude 30 wrzesień 2011, 07:52

Spojrzeć na Ten samouczek dla doskonałej wtyczki jQuery wtyczki, która Czy dokładnie to, czego potrzebujesz, a nawet nie musisz bawić się obawami przeglądarkami.

Jeśli nie chcesz używać wtyczki, nadal zalecam przynajmniej użycie jQuery. Oto kolejny samouczek przechodzi przez wszystkie niezbędne kroki.

0
Dennis Traub 30 wrzesień 2011, 07:51

Ten post powinien zadbać o dodanie swoich klas CSS: Zmień klasę elementu z JavaScript .

Ten post powinien zadbać o zapobieganie formularzom: https://developer.mozilla.org / EN/dom/event.preventdefault.

0
Community 23 maj 2017, 12:12