Html:
<select id="Catagories_CategoryId" data-bind="options: CategoryServiceTypes,
optionsText: 'Name',
optionsCaption: 'Please select a Category...',
value: SelectedCategoryType">
</select>在下面的代码示例中,我刚刚删除了网格中的一项,因此我通过LoadServiceTypesFromSvc()重新填充网格
obj.SelectedCategoryTypeHolder(obj.SelectedCategoryType()); //copy the old selected object
pager.LoadServiceTypesFromSvc(); //repop
ko.utils.arrayForEach(obj.CategoryServiceTypes(), function(data) {
if (data.CategoryId() == obj.SelectedCategoryTypeHolder().CategoryId()) {
obj.SelectedCategoryType(data);
alert('selected ' + obj.SelectedCategoryType().Name()); //shows the name of the item I'm aiming for
}
});LoadServiceTypesFromSvc()还重新填充了select。我想将selects selected值设置为数据刷新之前的值。
即使警报确认obj.SelectedCategoryType()已经被设置为我想要的值-- select本身保持不变,并且仍然显示缺省的‘请选择...’。第一项。
我遗漏了什么?
非常感谢
发布于 2013-03-15 04:49:01
运行ko.utils.arrayForEach(...)阻塞.done函数中LoadServiceTypesFromSvc()返回的每一项
https://stackoverflow.com/questions/15416215
复制相似问题