在 Jquery 验证插件中使用自己的自定义消息和规则验证 select 框
Validate select box with own custom message and rule in Jquery validation plugin
当我使用 jquery 验证插件时,我的下拉框无法正常工作..
我的html密码是
<select class="control-select form-control" name="job_title" id="job_title" >
<option value="Select Role">-- Select Role--</option>
<option value="Admin" {{ ($admin->job_title=="Admin") ? "selected" : "" }}>Admin</option>
<option value="Subadmin" {{ ($admin->job_title=="Subadmin") ? "selected" : "" }}>Subadmin</option>
<option value="Superadmin" {{ ($admin->job_title=="Superadmin") ? "selected" : "" }}>Superadmin</option>
</select>
在 jquery 验证规则中,我给出了这样的
"job_title": {
required: true
},
但是没有用,那么将 select 框作为必填字段的替代方法是什么
它工作完美,问题出在你的 html,检查这一行:
<option value="Select Role">-- Select Role--</option>
要使用验证插件验证下拉列表,您必须将第一个下拉值作为空白传递,例如:
<option value="">-- Select Role--</option>
试试这个,它会解决你的问题。
说明: require
验证将检查 value
属性,但在您的情况下该值存在 value="Select Role"
,因此使第一个下拉值空白。
你可以这样试试:
$("form").validate({
rules: {
job_title: { valueNotEquals: "default" }
},
messages: {
job_title: { valueNotEquals: "Please select field" }
}
});
需要将 value="Select Role"
替换为 value=""
,如下所示:-
示例:-
$(document).ready(function() {
$("#signupForm").validate({
rules: {
"job_title": {
required: true
},
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.16.0/jquery.validate.min.js"></script>
<form id="signupForm">
<select class="control-select form-control" name="job_title" id="job_title">
<option value="">-- Select Role--</option>
<option value="Admin">Admin</option>
<option value="Subadmin">Subadmin</option>
<option value="Superadmin">Superadmin</option>
</select>
<input type ="submit" value = "click me">
</form>
引用:- Can I apply the required attribute to <select> fields in HTML5?
当我使用 jquery 验证插件时,我的下拉框无法正常工作..
我的html密码是
<select class="control-select form-control" name="job_title" id="job_title" >
<option value="Select Role">-- Select Role--</option>
<option value="Admin" {{ ($admin->job_title=="Admin") ? "selected" : "" }}>Admin</option>
<option value="Subadmin" {{ ($admin->job_title=="Subadmin") ? "selected" : "" }}>Subadmin</option>
<option value="Superadmin" {{ ($admin->job_title=="Superadmin") ? "selected" : "" }}>Superadmin</option>
</select>
在 jquery 验证规则中,我给出了这样的
"job_title": {
required: true
},
但是没有用,那么将 select 框作为必填字段的替代方法是什么
它工作完美,问题出在你的 html,检查这一行:
<option value="Select Role">-- Select Role--</option>
要使用验证插件验证下拉列表,您必须将第一个下拉值作为空白传递,例如:
<option value="">-- Select Role--</option>
试试这个,它会解决你的问题。
说明: require
验证将检查 value
属性,但在您的情况下该值存在 value="Select Role"
,因此使第一个下拉值空白。
你可以这样试试:
$("form").validate({
rules: {
job_title: { valueNotEquals: "default" }
},
messages: {
job_title: { valueNotEquals: "Please select field" }
}
});
需要将 value="Select Role"
替换为 value=""
,如下所示:-
示例:-
$(document).ready(function() {
$("#signupForm").validate({
rules: {
"job_title": {
required: true
},
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.16.0/jquery.validate.min.js"></script>
<form id="signupForm">
<select class="control-select form-control" name="job_title" id="job_title">
<option value="">-- Select Role--</option>
<option value="Admin">Admin</option>
<option value="Subadmin">Subadmin</option>
<option value="Superadmin">Superadmin</option>
</select>
<input type ="submit" value = "click me">
</form>
引用:- Can I apply the required attribute to <select> fields in HTML5?