如何隐藏dojo验证错误工具提示?
我正在使用dojo验证输入字段,如果有错误(例如:必填字段),它将显示在dojo工具提示中。但是,我想在自定义div中显示错误,而不是工具提示 因此,我想知道是否有办法隐藏/禁用工具提示中显示的验证错误?如果是这样,我可以捕获隐藏工具提示中显示的错误消息,并在自定义div中显示结果,这将与整个应用程序的错误样式一致如何隐藏dojo验证错误工具提示?,dojo,tooltip,hide,Dojo,Tooltip,Hide,我正在使用dojo验证输入字段,如果有错误(例如:必填字段),它将显示在dojo工具提示中。但是,我想在自定义div中显示错误,而不是工具提示 因此,我想知道是否有办法隐藏/禁用工具提示中显示的验证错误?如果是这样,我可以捕获隐藏工具提示中显示的错误消息,并在自定义div中显示结果,这将与整个应用程序的错误样式一致 请告知。谢谢。此场景的简单解决方案是根本不向这些字段添加“必需”条件。而是添加一个单独的事件处理程序或函数来检查此验证 例如:为onBlur事件添加一个函数。检查该字段是否为必填字段
请告知。谢谢。此场景的简单解决方案是根本不向这些字段添加“必需”条件。而是添加一个单独的事件处理程序或函数来检查此验证 例如:为onBlur事件添加一个函数。检查该字段是否为必填字段。如果是,则按预期在自定义div中显示消息
<input data-dojo-type="dijit/form/TextBox"
id="sampleText" type="text" mandatory="true" onBlur="checkMandatory(this)"/>
function checkMandatory(field) {
if(field.mandatory=='true' && field.value=="") {
alert('value required'); // replace this code with my showing msg in div
} else {
field.domNode.blur();
}
}
功能检查必填项(字段){
if(field.mandatory='true'&&field.value==“”){
警报('value required');//将此代码替换为我在div中显示的消息
}否则{
field.domNode.blur();
}
}
上面的代码段并没有使用Dojo进行验证,而是手动进行验证。Dojo实际上通过添加属性“required”来帮助缓解这种情况。如果这不是必需的,那么就忽略本例中的Dojos帮助并使用本机。
因此,对于所有字段,只需添加属性——“强制”和“onBlur”,并为所有这些字段添加上述给定的onBlur操作函数。我建议使用标准的Dojo验证机制,与vivek_nk建议的相反。这种机制在大多数情况下都非常有效,并且涵盖了大多数情况(必需、正则表达式、数字、日期等) 为了解决您的问题:您可以否决ValidationTextBox的“dispayMessage”函数(例如) 只需创建自己的ValidationTextBox小部件,扩展dijit/form/ValidationTextBox,并实现自己的“displayMessage”功能
displayMessage: function(/*String*/ message){
// summary:
// Overridable method to display validation errors/hints.
// By default uses a tooltip.
// tags:
// extension
if(message && this.focused){
Tooltip.show(message, this.domNode, this.tooltipPosition, !this.isLeftToRight());
}else{
Tooltip.hide(this.domNode);
}
}