我正在为STRUTS应用程序使用DOJO UI框架。我需要找到一种使filteringselect
项无效的方法。 invalidMessage
已设置,但错误图标未显示,因为列表中包含所选值的所有值都是列表中的有效项。
我注意到如果我修改了displayValue
中的filteringselect
,我就能看到错误图标和invalidMessage
。有没有办法显示错误图标和invalidMessage
,而无需将displayValue
修改为列表中的无效值?
此验证是必需的,因为用户可以选择有效选项,但根据用户执行的操作(自定义验证),它可能是无效选项
以下是代码:
HTML Struts和DOJO过滤选择
<s:select data-dojo-type="dijit/form/FilteringSelect"
id="genderId" name=mygenderId" title="(7). Gender"
headerKey="0" headerValue="Select Your Gender" list="genderList"
listKey="id" missingMessage="Please Select Your Gender" required="true"
invalidMessage="Invalid Gender Type !"
listValue="genderName" style="width: 25em;" />
服务器端验证
这不起作用我无法设置新的invalidMessage。
var myWidgetValue = 'Invalid option please try again !';
var myWidget = dijit.byId("genderId");
myWidget.validator = function () {
console.log('Setting '+widgetName + " : "+myWidgetValue);
this.set("invalidMessage", myWidgetValue);
};
myWidget._hasBeenBlurred = true;
myWidget.validate();