2015-06-04 18 views
0

我正在使用基诺验证来验证数据在db中更新之前。 我不太熟悉基因敲除验证。 输入框的data-bind中的“valueUpdate”是“afterkeydown”,为此,每当我给出一些无效值时,消息即将出现。 但是我想在用户第一次从输入框中突出显示消息。之后,我想要显示关键信息。 如果我可以在从视图模型聚焦后设置valueUpdate,这可能会有所帮助。 因为我在数据绑定中有其他绑定,所以我不能只从vm中添加数据绑定属性。 我检查了this link显示验证消息后,用户输入无效的值,然后集中,然后在keyup上,使用基因敲除验证

任何想法如何做到这一点?

+1

你能提供一些你的代码? – swornabsent

+0

像这样http://jsfiddle.net/KHFn8/5726/。否则请尝试拨动我的小提琴来进一步解释。欢呼声 –

+0

这是我使用的代码示例。 [编辑小提琴](http://jsfiddle.net/KHFn8/5726/)。 @swornabsent – Shrabanee

回答

0

你的小提琴例子是使用Knockout 2.3。如果你使用Knockout 3+,你可以使用textInput绑定。

textInput绑定将文本框()或文本区域()与viewmodel属性链接在一起,提供viewmodel属性和元素值之间的双向更新。与值绑定不同,textInput为DOM提供所有类型用户输入的即时更新,包括自动完成,拖放和剪贴板事件。

所以不是:

<input data-bind='value: emailAddress,valueUpdate:"keyup"' required pattern="@"/>

您结合会是什么样子:

<input data-bind='textInput: emailAddress' required pattern="@"/>

这里是一个更新的小提琴: https://jsfiddle.net/mx45nnL6/2/

+0

我正在使用textInput。但这不是解决我的问题。 – Shrabanee

+0

如果我不能使用valueUpdate只有一个值。我想使用模糊或keydown。第一次用户输入时,我不想显示错误信息。但下一次,如果用户给出错误的值,消息应该显示在keyup上(jQuery验证的工作方式)。 @ 79IT – Shrabanee

相关问题