dojo:将ValidationTextBox设置为模糊

Oam*_*ieR 1 dojo

我不能ValidationTextBox失去焦点,我也看不到这种方法blur().

怎么能让它失去焦点?

Phi*_*ppe 5

blur()方法适用于dom节点.小部件通常由html模板支持.如果查看dijit/form/templates/ValidationTextBox.html,您会看到有一个dom节点,其dojoAttachPoint包含"focusNode".以下是dojo 1.7上模板的代码,供参考:

<div class="dijit dijitReset dijitInlineTable dijitLeft"
id="widget_${id}" role="presentation"
><div class='dijitReset dijitValidationContainer'
    ><input class="dijitReset dijitInputField dijitValidationIcon dijitValidationInner" value="&#935; " type="text" tabIndex="-1" readonly="readonly" role="presentation"
/></div
><div class="dijitReset dijitInputField dijitInputContainer"
    ><input class="dijitReset dijitInputInner" dojoAttachPoint='textbox,focusNode' autocomplete="off"
        ${!nameAttrSetting} type='${type}'
/></div
Run Code Online (Sandbox Code Playgroud)

您可以通过执行以下操作直接引用模板中引用的节点作为"focusNode"来实现模糊触发:

dijit.byId("myValidationTextBoxId").focusNode.blur();
Run Code Online (Sandbox Code Playgroud)