道场:设置个ValidationTextBox模糊(dojo: Set ValidationText

2019-10-16 14:18发布

我不能让ValidationTextBox失去焦点,我不能看到该方法blur()两种。

我怎样才能使它失去焦点?

Answer 1:

模糊()方法适用于DOM节点。 窗口小部件通常由一个HTML模板支持。 如果你看的dijit /表格/模板/ ValidationTextBox.html,你会看到有是具有含“focusNode”一dojoAttachPoint DOM节点。 这里是道场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

你可以通过做类似的模板“focusNode”引用的节点的直接引用实现你的模糊触发:

dijit.byId("myValidationTextBoxId").focusNode.blur();


Answer 2:

你必须覆盖类ValidationtextBox.js的功能。 默认情况下,它总是调用的onkeypress事件的事件。



文章来源: dojo: Set ValidationTextBox to blur
标签: dojo