Ich verwende derzeit:
<script src="https://code.jquery.com/jquery-1.10.2.min.js"></script>
<script src="https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
<script src="../js/bootStrap/js/bootstrap.min.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/jquery.validate.min.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/additional-methods.min.js"></script>
mit Validierung wie:
j$('.delValidate').each(function(){
j$(this).validate({
rules:{
delivery_Method:{
required: true
}
},
message:{
delivery_Method:{
required: true
}
}
});
});
j$('.validateUser').each(function(){
j$(this).validate({
rules:{
f_Name:{
required: true
},
l_Name:{
required: true
},
username:{
required: true,
minlength: 6
},
password: {
validChars: true,
noSpace: true,
minlength: 6,
skip_or_fill_minimum: [3,".pw"]
},
confPass: {
equalTo: "#password",
skip_or_fill_minimum: [3,".pw"]
}
}
});
});
HTML-Schnipsel:
<form class="form-horizontal delValidate" action="#" method="post">
<input type="hidden" name="formIdentifier" value="addDel" />
<div class="form-group">
<div class="col-sm-3">
<input type="text" name="delivery_Method" class="form-control" placeholder="Enter new method" />
</div>
<div class="col-sm-2 col-sm-offset-2">
<button type="submit" class="btn btn-default btn-block">Add</button>
</div>
</div>
</form>
Aber wenn ich auf meine Seite gehe, wird mein Formular mit dem Attribut noValidate gerendert und daher kann ich null/leere Werte in die Datenbank einfügen. Was ist die Begründung dafür? Muss das Formular auf eine bestimmte Weise eingerichtet werden? Erkennt die jQuery-Validierung, dass etwas nicht stimmt und daher nicht funktioniert? Meine Drecksarbeit ist die Verwendung von:
j$(this).removeAttr('novalidate');
Dein Code funktioniert einwandfrei: jsfiddle.net/tv7Bz
– Funkelnd
21. März 2014 um 15:20 Uhr