IMS arbeitet an einer einfachen Form, und ich bin versucht, die Felder zu validieren, mit folgendem Code mir in der Lage, das Feld zu validieren und eine Nachricht hinzufügen, wenn das Feld leer ist. }Validieren eine Form
Antwort
Ändern Sie Ihren JavaScript-Code zu folgenden:
function validation(id) {
var value = document.getElementById(id).value;
if (value === "" || value == null) {
document.getElementById('Err' + id).innerHTML = "- Field Required";
document.getElementById(id).classList.add('class');
var label = findLabel(document.getElementById('Name'));
label.classList.add('class');
} else {
document.getElementById('Err' + id).innerHTML = "";
document.getElementById(id).classList.remove('class');
var label = findLabel(document.getElementById('Name'));
label.classList.remove('class');
}
}
function findLabel(el) {
var idVal = el.id;
labels = document.getElementsByTagName('label');
for (var i = 0; i < labels.length; i++) {
if (labels[i].htmlFor == idVal)
return labels[i];
}
}
.class
{
background: #f97d7d;
color: #ff0000;
border: 1px solid #ff0000 !important;
}
<label class="" for="Name">* Name <span class="error" id="ErrName"></span></label>
<input type="text" name="Name" id="Name" onblur="validation('Name')">
Ich habe eine Funktion findLable
hinzugefügt, um das Etikett für diesen Eingang zu bekommen, und die Verwendung dieser, zugegeben Fehlerklasse zu, dass Etikette.
Sie haben 'findLable' definiert, aber' findLableForControl' genannt. Bitte korrigieren Sie den Namen der definierten/aufgerufenen Methode. –
Sorry, korrigierte beide oben genannten Fehler. Danke für das Aufzeigen :) – gaganshera
Die Spanne wird als Klasse „Fehler“ definiert, aber sie haben nicht diese Klasse definiert sind.
Zuerst müssen Sie die Seite für Etiketten scannen:
var labels = document.getElementsByTagName('LABEL');
for (var i = 0; i < labels.length; i++) {
if (labels[i].htmlFor != '') {
var elem = document.getElementById(labels[i].htmlFor);
if (elem)
elem.label = labels[i];
}
}
Dann können Sie einfach in Ihre IF-ELSE Bedingung verwenden folgende,
document.getElementById(id).label.classList.add('red-text');
und
document.getElementById(id).label.classList.remove('red-text');
I hat auch eine CSS-Klasse hinzugefügt, damit der Text rot ist.
.red-text {
color: #ff0000;
}
Schlusscode:
function validation(id) {
var labels = document.getElementsByTagName('LABEL');
for (var i = 0; i < labels.length; i++) {
if (labels[i].htmlFor != '') {
var elem = document.getElementById(labels[i].htmlFor);
if (elem)
elem.label = labels[i];
}
}
var value = document.getElementById(id).value;
if (value === "" || value == null) {
document.getElementById('Err' + id).innerHTML = "- Field Required";
document.getElementById(id).classList.add('class');
document.getElementById(id).label.classList.add('red-text');
} else {
document.getElementById('Err' + id).innerHTML = "";
document.getElementById(id).classList.remove('class');
document.getElementById(id).label.classList.remove('red-text');
}
}
.class {
background: #f97d7d;
color: #ff0000;
border: 1px solid #ff0000 !important;
}
.red-text {
color: #ff0000;
}
<label for="Name">* Name <span class="error" id="ErrName"></span></label>
<input type="text" name="Name" id="Name" onblur="validation('Name')">
Ich denke, es ist besser, Unschärfe und Eingabeereignisse zu binden
der Code:
Name.addEventListener('blur', function(){
if (!Name.value){
ErrName.innerHTML="Field Required";
this.classList.add('class');
ErrName.parentNode.style.color="red";
}
});
Name.addEventListener('input',function(){
if (Name.value.length && ErrName.innerHTML=="Field Required"){
ErrName.innerHTML="";
this.classList.remove('class');
ErrName.parentNode.style.color="black";
}
});
- 1. reCaptcha Validieren auf asp.net Form
- 2. E-Mail mit "versteckter Form" validieren?
- 3. Wie Kontrollkästchen in einer AMP Form validieren
- 4. Angular - nicht validieren Form von Radio-Tasten
- 5. Kann reCAPTCHA nicht in PHP-Form validieren
- 6. , wie das Muster in Form zu validieren
- 7. Angular2 Form validieren nur unter bestimmten Bedingungen
- 8. JQuery zwei Formen validieren - Syntax Form
- 9. Validieren Sie eine Gridview
- 10. Firebase validieren eine Postleitzahl
- 11. Array mit jQuery validieren Validieren
- 12. Formular validieren, wenn eine Bedingung erfüllt ist
- 13. wie Form für wordcount und alphanumerische Werte validieren mit Bootstrap
- 14. Wie validieren Form mit input [type = file] in AngularJS
- 15. Wie validieren "Felder" in Form formidable auf der node.js?
- 16. Validieren der Bedingung mit jQuery Validieren
- 17. validieren
- 18. Angularjs validieren
- 19. Slick2d Form enthält eine andere Form
- 20. Validieren Sie mit AngularJS
- 21. Anmeldeformular validieren ASP.NET MVC
- 22. Kontaktformular Validieren nicht
- 23. Formular validieren wie GenericView
- 24. Validieren von Image Uploads
- 25. Funktion in CakePHP validieren
- 26. form.is_valid ist nicht validieren
- 27. Petersilie JS nicht validieren
- 28. CakePHP 3: Formular validieren
- 29. Gibt es eine gute Möglichkeit, jQuery-Code zu validieren?
- 30. Simple_form Eingabe nicht validieren
Mögliche Duplikate von [Was sind gültige Werte für das ID-Attribut in HTML?] (Http://stackoverflow.com/questions/70579/what-are-valid-values-for-the-id-attribute -in-html) – Pedro