使观察不到,不更新输入值

时间:2018-11-30 22:10:44

标签: knockout.js

我正在使用Knockout将数据发布到服务器。

我遇到的问题是表单包含带有值的HIDDEN字段。创建绑定并使其可见时,将清除隐藏字段。

self.resetCode = ko.observable();

如果我删除该行,则会显示“未定义resetCode”错误。如果我不使用observable,而仅将变量创建为“ resetCode =”,则该字段也会被清除。

我该怎么办?

谢谢 海梅

3 个答案:

答案 0 :(得分:0)

您知道此值是什么,并且在打开页面时该值始终相同吗? 如果是,则可以这样设置可观察值的初始值:

self.resetCode = ko.observable('somevalue');

通过这种方式,创建绑定时您的值不会消失。

答案 1 :(得分:0)

我对您的问题的理解是,当JS位于asp.net MVC控制器提供的视图的单独文件中时,初始化self.resetCode的值。

您可以通过以下两种方式进行操作。

第一种方法是在视图中添加一小段JS,以便将其呈现为视图的一部分。然后可以引用该对象并将其传递给页面初始化脚本。

第二种方法是查询API端点,以检索页面加载到浏览器之后但用户无法使用页面之前需要的所有数据。

答案 2 :(得分:0)

该解决方案未针对此表单使用剔除功能。我认为淘汰赛应采用一种不清除界线的方法。