jquery easyui校验select下拉列表值是否为空的问题

属性名 类型 描述 默认值
required 布尔 定义文本域是否为必填项 false
validType 字符串 定义字段的验证类型,比如email, url, etc. null
missingMessage 字符串 当文本框为空时提示的文本信息 This field is required.
invalidMessage 字符串 当文本框内容不合法时提示的文本信息 null

required只表示文本框中是否有内容,easy ui的select框渲染完后 会自动添加一个文本框用于输入,如下所示:
<span class="combo" style="width: 198px; height: 20px;"><input type="text" class="combo-text validatebox-text validatebox-invalid" autocomplete="off" style="width: 176px; height: 20px; line-height: 20px;"><span><span class="combo-arrow" style="height: 20px;"></span></span><input type="hidden" class="combo-value" name="state" value=""></span>

此时如果required=true,你清空此文本框,则会报 必须有内容的异常; 即此时验证的是<option></option>中间的内容是否为空

你可以加editable="false" 不允许编辑

你现在是想校验 <option value="">是否为空,可以这样

1、注册自定义的validateType
$.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.‘ 

});


2、使用

<select
id="test"
class="easyui-combobox"
name="state"
style="width:200px;"
required="true"
validType="selectValueRequired[‘#test‘]"
>
   <option value="">test1</option>  
   <option value="2">test2</option>  
   <option value="3">test3</option>
</select>

selectValueRequired[‘#test‘] 表示验证类型 和 验证的组件

jquery easyui校验select下拉列表值是否为空的问题,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。