最近项目需求select中的值必须输入。然而,使用easyui麻烦的是在select标签上加入
select class=”easyui-combobox easyui-validatebox” required=”true”
,运行时发现没有效果。必须写扩展代码来解决comboxbox的非空验证。
代码
<select
id="test"
class="easyui-combobox"
name="state"
style="width:200px;"
required="true"
validType="selectValueRequired['#test']"
>
<option value="">请选择</option>
<option value="1">test1</option>
<option value="2">test2</option>
<option value="3">test3</option>
</select>
扩展代码 :
<script>
/**
* 扩展combox验证,easyui原始只验证select text的值,不支持value验证
*/
$.extend($.fn.validatebox.defaults.rules, {
selectValueRequired: {
validator: function(value,param){
console.info($(param[0]).find("option:contains('"+value+"')").val());
return $(param[0]).find("option:contains('"+value+"')").val() != '';
},
message: 'select value required.'
}
});
</script>
运行展示 :