dom 中输入元素模糊的隐藏焦点
Hidden focus on blur of an input element in dom
一点说明:我正在使用 kendo UI(Telerik) 的列表视图控件。在列表视图中编辑字段后,我触发了该控件的更新事件。列表视图控件有一些文本框、下拉列表、复选框和提交按钮。当用户更改某些内容时,理想情况下它应该触发更新但它不执行更新,因为控件无法判断模型是否发生更改。
仅当我在文本框中输入内容并单击文本框外部时才有效,即在单击提交之前执行 onblur。我不知道为什么会这样,但我需要的是触发一个焦点事件,但处于隐藏模式,这样用户就不会意识到它,但它只是在用户在文本框中输入内容后发生,以便列表视图控件工作成功。
我正在尝试像下面那样做,但它会引起用户的注意。用户在点击提交之前在文本框中输入内容后,如何在隐藏模式下触发焦点?
function BlurFunc() {
debugger;
$(this).closest('li').find('.inputField').focus();
}
如果没有您的代码,则不清楚您是否正在使用 MVVM 数据绑定到您的模型,但这可能会有所帮助;来自 http://docs.telerik.com/kendo-ui/framework/mvvm/bindings/value:
By default the value binding relies on the change DOM event, which is
raised after blurring the element whose value has changed. This means
that the value from the View-Model is updated when the element loses
focus. The data-value-update attribute can be used to specify a
different DOM event, such as keyup or keypress. The keydown event is
not supported, because the DOM element value is not yet updated when
that event triggers.
例如,尝试将 data-value-update="keyup" 添加为文本框输入元素的属性:
<input data-value-update="keyup" data-bind="value: inputValue" />
这应该会在每次按键时更新模型值,而不是等到焦点被移除。
一点说明:我正在使用 kendo UI(Telerik) 的列表视图控件。在列表视图中编辑字段后,我触发了该控件的更新事件。列表视图控件有一些文本框、下拉列表、复选框和提交按钮。当用户更改某些内容时,理想情况下它应该触发更新但它不执行更新,因为控件无法判断模型是否发生更改。
仅当我在文本框中输入内容并单击文本框外部时才有效,即在单击提交之前执行 onblur。我不知道为什么会这样,但我需要的是触发一个焦点事件,但处于隐藏模式,这样用户就不会意识到它,但它只是在用户在文本框中输入内容后发生,以便列表视图控件工作成功。
我正在尝试像下面那样做,但它会引起用户的注意。用户在点击提交之前在文本框中输入内容后,如何在隐藏模式下触发焦点?
function BlurFunc() {
debugger;
$(this).closest('li').find('.inputField').focus();
}
如果没有您的代码,则不清楚您是否正在使用 MVVM 数据绑定到您的模型,但这可能会有所帮助;来自 http://docs.telerik.com/kendo-ui/framework/mvvm/bindings/value:
By default the value binding relies on the change DOM event, which is raised after blurring the element whose value has changed. This means that the value from the View-Model is updated when the element loses focus. The data-value-update attribute can be used to specify a different DOM event, such as keyup or keypress. The keydown event is not supported, because the DOM element value is not yet updated when that event triggers.
例如,尝试将 data-value-update="keyup" 添加为文本框输入元素的属性:
<input data-value-update="keyup" data-bind="value: inputValue" />
这应该会在每次按键时更新模型值,而不是等到焦点被移除。