我在select元素和jquery validate插件中使用multiselect js插件来验证表单元素。
我知道这是因为select元素[]
属性中存在“name
”,导致此错误,但我想启用多个选择。
当我删除“[]
”时,它工作正常..
这是我的HTML:
<div class="form-group">
<label class="col-sm-4 control-label" for="internal_team">Team <span class="input-required">*</span></label>
<div class="col-sm-7">
<select name="team[]" class="form-control multiselect-ui" multiple>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
</div>
</div>
这是我的jquery验证:
rules:
{
"team[]": "required"
},
messages:
{
"team[]": "Please select team",
}
我该如何解决这个问题? 很感谢任何形式的帮助。感谢。
答案 0 :(得分:2)
您是否尝试过分配ID以选择标记并使用多选方法检索值?
<select name="team[]" class="form-control multiselect-ui" id="team" multiple="multiple">
$('#team').multiSelect()
答案 1 :(得分:1)
你必须转义[]
,因为jQuery认为它是一个属性选择器。
$("label[for='team[]'], label[for='team[]'] *, #team[]-error")
应该是
$("label[for='team[]'], label[for='team[]'] *, #team\\[\\]-error")
<强>演示强>
$("label[for='team[]'], label[for='team[]'] *, #team\\[\\]-error")
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>