Kostenlos Online Lesen
JQuery Kochbuch (German Edition)
Titel:
JQuery Kochbuch (German Edition) Kostenlos Bücher Online Lesen
Autoren:
jQuery Community Experts
Vom Netzwerk:
MEHRFACHAUSWAHL -->
Lieblingsessen
Pizza
Burger
Salat
Bitte wählen Sie Ihr
Lieblingsessen aus.
Händigkeit:
Links
Rechts
Bitte wählen Sie aus, mit welcher
Hand Sie schreiben.
Kommentare
Was denken Sie gerade?
Ich stimme den AGB zu.
Bitte markieren Sie diese Box!
Lösung
Der erste Teil der Lösung ist recht einfach. Das
-Element wird selektiert und das Event
submit
übernommen. Wenn die Form abgeschickt werden soll, werden die notwendigen Form-Elemente durchlaufen und es wird geprüft, ob sie korrekt ausgefüllt sind. Gibt es keine Fehler, dann wird das Event
submit
ausgelöst:
$('form').submit(function(event){
var isErrorFree = true;
// alle notwendigen Form-Elemente durchlaufen und überprüfen
$('input.required, select.required, textarea.required',this).each(function(){
if ( validateElement.isValid(this) == false ){
isErrorFree = false;
};
});
// Alternative per Ajax:
// event.preventDefault();
// if (isErrorFree){ $.get( url, data, callback, type ) }
// if (isErrorFree){ $.post( url, data, callback, type ) }
// if (isErrorFree){ $.ajax( options ) }
return isErrorFree;
}); // Ende von .submit()
Im zweiten Teil dieser Lösung wird die eigentliche Überprüfung vorgenommen. Die Methode
isValid()
speichert zunächt häufiger genutzte Daten des zu überprüfenden Elements zwischen. Dann wird es in der
switch()
-Anweisung geprüft. Zum Schluss werden die Klassennamen dem
und den
div.errorMessage
-Elementen hinzugefügt oder wieder entfernt.
var validateElement = {
isValid:function(element){
var isValid = true;
var $element = $(element);
var id = $element.attr('id');
var name = $element.attr('name');
var value = $element.val();
//
nutzt Typattribute aus dem Tag
//
besitzt den Typ 'textarea'
//
besitzt den Typ 'select-one' oder 'select-multiple'
var type = $element[0].type.toLowerCase();
switch(type){
case 'text':
case 'textarea':
case 'password':
if ( value.length == 0 ||
value.replace(/\s/g,'').length == 0 ){ isValid = false; }
break;
case 'select-one':
case 'select-multiple':
if( !value ){ isValid = false; }
break;
case 'checkbox':
case 'radio':
if( $('input[name="' + name +
'"]:checked').length == 0 ){ isValid = false; };
break;
} // Ende von switch()
// anstatt $(selector).method nutzen wir $(selector)[method]
// Wahl der Methode
var method = isValid ? 'removeClass' : 'addClass';
// Fehlermeldung anzeigen [addClass]
// Fehlermeldung verbergen [removeClass]
$('#errorMessage_' + name)[method]('showErrorMessage');
$('label[for="' + id + '"]')[method]('error');
return isValid;
} // Ende von validateElement.isValid()
}; // Ende des Objekts validateElement
Diskussion
Die Überprüfungen sind in dieser Lösung ziemlich einfach. Folgendes wird kontrolliert:
Die Elemente
,
und
enthalten Daten, die nicht nur aus Whitespace bestehen.
Bei
-Elementenist eine andere als die Standard-Option ausgewählt. Beachten Sie, dass es zwei Arten von
-Elementen gibt: »select-one« und »select-multiple« (siehe den zweiten Code-Ausschnitt im Abschnitt für den HTML-Code und den vorherigen Code-Ausschnitt für die JavaScript-Überprüfung). Das erste
-Element des »select-one«-
muss das Attribut
value=""
besitzen, damit die Überprüfung funktioniert. Das
«
1
2
...
94
95
96
97
98
99
100
...
183
184
»
Weitere Kostenlose Bücher
Die Rückkehr des Dunkelelf 2 - Kampf der Kreaturen Online Lesen
von
R. A. Salvatore
B00B5B7E02 EBOK Online Lesen
von
Susan Cain
Chaos vor der Kamera Online Lesen
von
Ulf Blanck
Angst - Kilborn, J: Angst - Afraid Online Lesen
von
Jack Kilborn
Tod einer jungen Frau Online Lesen
von
Carter Brown
Die drei ??? und der Super-Papapgei Online Lesen
von
Robert Arthur
Söhne der Erde 19 - Der Tödliche Ring Online Lesen
von
Susanne U. Wiemer
David and Goliath: Underdogs, Misfits, and the Art of Battling Giants Online Lesen
von
Malcolm Gladwell