我有一个需要自定义验证的表单(引导选择不能很好地与 JQuery.validate 配合使用)。这种形式的主要规则是不能不选择任何下拉菜单。我推断当我选择一个下拉项时,class
我的下拉 div 的属性会收到一个select2-container-active
后缀,这使我能够编写一个自定义 JQuery 选择器:
function validateSelect(id) {
var result = {
valid: $(id).hasClass("select2-container-active"),
element: id
}
return result;
}
这会获取每个有效的(选定的)下拉菜单,这使我能够确定是否有任何无效的下拉菜单。class
问题是当我点击提交按钮时,在我有机会调用该validateSelect
方法之前,后缀已从属性中删除。它被调用,但找不到后缀,因此“认为”没有选择下拉项目,即使我在每个下拉菜单中都选择了一个项目。
如何防止按钮在提交(单击)时删除此后缀?
编辑: 这是下拉列表之一的 HTML:
<div class="control-group">
<label class="control-label" for="selectInsert02">City:</label>
<div class="controls">
<select name="citiesSelect" id="selectInsert02" class="input-xlarge with-search" data-bind="foreach: certificationModel.citiesList" required>
<option data-bind="text: Name, value: CityID"></option>
</select>
</div>
</div>