Javascript 选择多元素非空验证引擎,无需
我需要验证是否至少选择了一个元素。这个元素是动态填充的,我需要使用验证引擎验证是否至少选择了一个选项元素 在这里填写选择选项项Javascript 选择多元素非空验证引擎,无需,javascript,jquery,jquery-validation-engine,Javascript,Jquery,Jquery Validation Engine,我需要验证是否至少选择了一个元素。这个元素是动态填充的,我需要使用验证引擎验证是否至少选择了一个选项元素 在这里填写选择选项项 jQuery("#bt_add").click(function(){ storeUsedGroups[attr_group.val()] = true; jQuery("#atributo_id").append('<option value='+attr_name.val() + ' groupid='+attr_group
jQuery("#bt_add").click(function(){
storeUsedGroups[attr_group.val()] = true;
jQuery("#atributo_id").append('<option value='+attr_name.val() +
' groupid='+attr_group.val()+'>' + attr_group.text() +
' : ' + attr_name.text()+'</option>'
);
});
并使用必需的进行验证,但对于提交表单,需要选择插入的选项
<select name="atributo_id[]" id="atributo_id" multiple="multiple" class="validate[required]">
<option value="5" groupid="1">Color : Azul</option>
</select>
我只需要验证元素是否为非空。更新:如果我正确理解您的意思,则仅当select元素中填充了选项时,您才希望应用必需的规则
您可以通过自定义函数调用来实现这一点。将select的类更改为
<select name="atributo_id[]"
id="atributo_id"
multiple="multiple"
class="validate[funcCall[ifSelectNotEmpty]]">
它应该可以工作,但不会,因为jquery.validationEngine.js在第707行崩溃,这是一个bug。所以你需要把707行从
if(!required && && !(field.val()) && field.val().length < 1) options.isError = false;
或
你是说选择了一个选项吗?欢迎来到堆栈溢出!你为什么不让我们看看你现在有什么?当我们看到您为解决问题所付出的努力时,您会发现社区的帮助要大得多。最初,select元素是空的,没有选项项,我在提交表单时需要验证。使用validationEngine,我可能需要使用自定义正则表达式,如果使用必需的类,则强制我选择它。是的,至少有一个选项。使用validationEngine。@Angel您需要更多的问题帮助吗?
if(!required && && !(field.val()) && field.val().length < 1) options.isError = false;
if(!required && !field && !(field.val()) && field.val().length < 1) options.isError = false;
^^^^^^
if (!$("#atributo_id option:selected").val()) {
alert("Nothing has been selected");
}
if (!$("#atributo_id option:selected").length) {
alert("Nothing has been selected");
}