0

我正在尝试动态if链接到数组中不同项目的属性。

我当前的代码:

装载机

for (...) {

    var index = this.App.Data.Questions.push({
       ...
    }) - 1;

    if (CompareGuids(this.App.Data.Questions[index].QuestionId, '06EF685A-629C-42A5-9394-ACDEDF4798A5')) {
        this.App.PregnancyQuestionId = index;
    }

模板

{^{if ~root.Data.Questions[~root.PregnancyQuestionId].Response.ResponseText == "true"}}
   {{include #data tmpl="Clinical-History-QuestionWrapper-SingleQuestion"/}}
{{/if}}

它适用于初始加载,但不会更新。

请注意,我假设我可以使用 in 中的布尔属性来实现这一点~root,然后$.observable(...).oberserve(...)更新此属性,但我更愿意直接访问。

4

1 回答 1

0

看起来你需要做的就是确保你正在改变PregnancyQuestionIdobservable。仅仅分配一个值并不能触发数据链接来更新 UI。

你需要写:

$.observable(this.App).setProperty("PregnancyQuestionId", index);

那应该会正确触发绑定...

于 2013-10-24T00:12:48.183 回答