jsViews动态链接到数组中的不同项

时间:2013-10-23 14:38:05

标签: templating jsviews

我正在尝试将动态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}}

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

注意我假设我可以使用~root中的布尔属性来实现此功能,然后让$.observable(...).oberserve(...)更新此属性,但我希望能够直接访问

1 个答案:

答案 0 :(得分:0)

看起来您需要做的就是确保您可以显着地更改PregnancyQuestionId。仅分配值不能触发数据链接以更新UI。

你需要写:

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

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