[英]Custom Validation in Jquery
我有一個驗證規則。 但是我希望它以自定義的方式表現。
這是我的規則:
FirstName:{
required: true,
minlength:5,
maxlength:35,
alphanumeric:true
}
和錯誤消息:
messages:
{
FirstName: "Please enter the First Name"
}
在規則中,如果我在第一筆划中按特殊字符,則會向我顯示錯誤消息。
我所做的任何錯誤都會向我顯示相同的錯誤消息。
我希望它根據我的錯誤行事。
即
如果我輸入4個字符,則應該顯示其他錯誤消息,例如“最小5個字符”
如果我輸入的字符超過35個字符,則應該出現類似“最大35個字符”的其他錯誤消息。
我怎樣才能做到這一點 ?
<script>
var jq = $.noConflict();
jq(document)
.ready(function () {
jq("#data")
.validate({
rules: {
FirstName: {
required: true,
minlength: 5,
maxlength: 35,
alphanumeric: true
},
messages: {
CompID: "Please choose any Company"
}
})
jq('#driver')
.click(function () {
jq("#data")
.valid();
});
});
像這樣
根據您的裝備替換“ rangelength”。 JS
jQuery.validator.setDefaults({
debug: true,
success: "valid"
});
$( "#myform" ).validate({
rules: {
field: {
required: true,
rangelength: [2, 6]
}
}
});
HTML
<form id="myform">
<label for="field">Required, minium length 2, maximum length 6: </label>
<input type="text" class="left" id="field" name="field">
<br/>
<input type="submit" value="Validate!">
為您的Restict Special Char。
var specialKeys = new Array();
specialKeys.push(8); //Backspace
specialKeys.push(9); //Tab
specialKeys.push(46); //Delete
specialKeys.push(36); //Home
specialKeys.push(35); //End
specialKeys.push(37); //Left
specialKeys.push(39); //Right
function IsAlphaNumeric(e) {
var keyCode = e.keyCode == 0 ? e.charCode : e.keyCode;
var ret = ((keyCode >= 48 && keyCode <= 57) || (keyCode >= 65 && keyCode <= 90) || (keyCode >= 97 && keyCode <= 122) || (specialKeys.indexOf(e.keyCode) != -1 && e.charCode != e.keyCode));
document.getElementById("error").style.display = ret ? "none" : "inline";
return ret;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.