如何隐藏dojo验证错误工具提示?

如何隐藏dojo验证错误工具提示?,dojo,tooltip,hide,Dojo,Tooltip,Hide,我正在使用dojo验证输入字段,如果有错误(例如:必填字段),它将显示在dojo工具提示中。但是,我想在自定义div中显示错误,而不是工具提示 因此,我想知道是否有办法隐藏/禁用工具提示中显示的验证错误?如果是这样,我可以捕获隐藏工具提示中显示的错误消息,并在自定义div中显示结果,这将与整个应用程序的错误样式一致 请告知。谢谢。此场景的简单解决方案是根本不向这些字段添加“必需”条件。而是添加一个单独的事件处理程序或函数来检查此验证 例如:为onBlur事件添加一个函数。检查该字段是否为必填字段

我正在使用dojo验证输入字段,如果有错误(例如:必填字段),它将显示在dojo工具提示中。但是,我想在自定义div中显示错误,而不是工具提示

因此,我想知道是否有办法隐藏/禁用工具提示中显示的验证错误?如果是这样,我可以捕获隐藏工具提示中显示的错误消息,并在自定义div中显示结果,这将与整个应用程序的错误样式一致


请告知。谢谢。

此场景的简单解决方案是根本不向这些字段添加“必需”条件。而是添加一个单独的事件处理程序或函数来检查此验证

例如:为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);
        }
    }