最近在修改项目中遇到了validate.js对表单的验证,网上了解到dataType="Require"是对必填项的验证,我的下拉框也设了验证方式为Require,却总是无法显示msg属性里的内容:
<select οnchange="getLabLab()" name="centerId" id="syjxcenter" οnkeypress="submitbyEnter(event)" class="required" style="width:200px;" dataType="Require" msg="请选所属中心" >
<option value="">
请选择
</option>
<s:iterator value="listgenSyjxcenter">
<option value="${centerId}">
${centerName}
</option>
</s:iterator>
</select>
<s:select name="roomentity.labLab.labId" list="lablist" listKey="labId" listValue="labName" headerKey="0" headerValue="请选择" id="lab" theme="simple" style="width:200px;" dataType="Require" msg="请选择所属实验室" />
找了半天也没看出这两个下拉框有什么不一样的地方,查看validate.js内容后才发现Require的定义是:
在我的第二个下拉框定义的headerkey值是0也属于这个范围,修改headerKey的值为空后问题解决。