Tom*_*Tom 14 jquery jquery-validate
我在jQuery中有以下代码.
当select元素的选项值为"0" 时,我需要显示验证消息"Year Required ".
<script type="text/javascript">
$(document).ready(function () {
$("#register").validate({
debug: true,
rules: {
year: {
required: function () {
if ($("#year option[value='0']")) {
return true;
} else {
return false;
}
}
}
},
messages: {
year: "Year Required",
},
});
})
</script>
Run Code Online (Sandbox Code Playgroud)
选择框
<select name="year" id="year">
<option value="0">Year</option>
<option value="1">1919</option>
<option value="2">1920</option>
<option value="3">1921</option>
<option value="4">1922</option>
</select>
Run Code Online (Sandbox Code Playgroud)
Spa*_*rky 43
由于您无法value=""在第一个中进行设置option,因此您需要使用内置addMethod()方法创建自己的规则.
jQuery:
$(document).ready(function () {
$('#myform').validate({ // initialize the plugin
rules: {
year: {
selectcheck: true
}
}
});
jQuery.validator.addMethod('selectcheck', function (value) {
return (value != '0');
}, "year required");
});
Run Code Online (Sandbox Code Playgroud)
HTML:
<select name="year">
<option value="0">Year</option>
<option value="1">1955</option>
<option value="2">1956</option>
</select>
Run Code Online (Sandbox Code Playgroud)
工作演示:http: //jsfiddle.net/tPRNd/
原答案:( 只有你可以value=""在第一个内设置option)
要使用selectjQuery Validate插件正确验证元素,只需要第一个option包含value="".所以删除0from value="0"并将其修复.
jQuery:
$(document).ready(function () {
$('#myform').validate({ // initialize the plugin
rules: {
year: {
required: true,
}
}
});
});
Run Code Online (Sandbox Code Playgroud)
HTML:
<select name="year">
<option value="">Year</option>
<option value="1">1955</option>
<option value="2">1956</option>
</select>
Run Code Online (Sandbox Code Playgroud)
演示:http: //jsfiddle.net/XGtEr/
要在选择列表上放置require规则,您只需要一个空值的选项
<option value="">Year</option>
Run Code Online (Sandbox Code Playgroud)
然后只需要自己应用就足够了
<script>
$(function () {
$("form").validate();
});
</script>
Run Code Online (Sandbox Code Playgroud)
与形式
<form>
<select name="year" id="year" class="required">
<option value="">Year</option>
<option value="1">1919</option>
<option value="2">1920</option>
<option value="3">1921</option>
<option value="4">1922</option>
</select>
<input type="submit" />
</form>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
106166 次 |
| 最近记录: |