Knockout JS - 如何在页面呈现后更新KO绑定属性? - 需要JQuery不引人注目的验证

时间:2014-01-30 18:13:15

标签: jquery knockout.js unobtrusive-validation

在页面呈现之后,在用户输入之后,设置为KO所需的字段为“data-value = true”,不需要通过JQuery不显眼的验证来验证。如何将属性更新为“false”,以便不将字段设置为必需?

我尝试过使用f.attr(“data-val”,“false”)失败,它更新了Object本身而不是attr:item。

2 个答案:

答案 0 :(得分:0)

尝试使用敲除“attr”绑定。 http://knockoutjs.com/documentation/attr-binding.html

你可以传递给attr绑定一个返回true / false的KO observable。您还可以创建一个自定义KO计算的observable,它基于视图模型上的其他属性返回true / false(http://knockoutjs.com/documentation/computedObservables.html

如果您遇到困难,请发布您正在尝试实现的内容的“减少”示例,包括您的html和viewmodel javascript。

答案 1 :(得分:0)

解决方法是重新整理表格。

重要的代码行如下。

currForm.removeData("validator");
currForm.removeData("unobtrusiveValidation");
$.validator.unobtrusive.parse(currForm);

这里找到了解决方案。 jquery.validate.unobtrusive not working with dynamic injected elements