下拉列表选择的值未在UI knockout js中更新

时间:2015-02-23 11:46:40

标签: javascript jquery html asp.net knockout.js

在我的应用程序中,我有一个表,当选择一行时,它会显示其详细信息(除了表中的数据外还有更多选项)。

单击编辑按钮时,它会显示可编辑的页面,我可以在其中编辑测试框和下拉列表。

此处,当我在文本框中编辑值时,该值将在不可编辑形式的UI中更新。

但是当我更改下拉列表时,更新后的值不会以不可编辑的形式显示。它只显示旧值。

这是我的下拉列表html。

<select id="ddlType" data-bind="options: $root.ddlTypes, optionsText: 'OppType', optionsValue: 'ID', optionsCaption: 'Select..', value: selectedTypeId"></select>

下拉列表正在从web api绑定。

请让我知道,我哪里出错......

提前致谢。

2 个答案:

答案 0 :(得分:1)

您应该将您的变量声明为可观察的

this.selectedTypeId = ko.observable();

在HTML中使用此变量时,根据上下文使用$ root / $ parent。

答案 1 :(得分:0)

我猜,selectedTypeId必须在viewmodel中可观察,因此对此的更改将自动更新UI。

this.selectedTypeId = ko.observable();