我在本地创建了这个示例
http://demos.telerik.com/kendo-ui/mvvm/remote-binding
在我的'更新'传输中,我确实修改了我的WebAPI中的'ProductName'
public IHttpActionResult Update(Product prod)
{
prod.Price = prod.UnitPrice * prod.Quantity;
prod.ProductName = prod.ProductName + DateTime.Now.ToString();
return Ok(prod);
}
它确实更新并反映在我的'下拉列表'上。
问题是文本框id =产品未显示最新的产品名称。文本框使用
绑定data-bind="value: selectedProduct.ProductName"
如何刷新此文本框?
谢谢。
除了这个
之外,一切都是一样的 update: {
url: "/Product/Update",
contentType: "application/json",
type: "POST"
},
和此。
parameterMap: function (data, type) {
return kendo.stringify(data);
}
如果没有做出这些改变;我的webapi不会收到任何价值。
答案 0 :(得分:0)
我相信,您的文本框未更新的原因有两个:1)您正在更改服务器上的数据而不是客户端,2)文本框与{{1}相关联变量,它与数据源无关。
换句话说,当您提交更新时,因为您的下拉列表绑定到selectedProduct
数据源,所以它的数据会自动更新,并刷新列表以显示更改。这是预料之中的。另一方面,productSource
不以任何方式绑定到数据源,因此,在调用更新之前,它仍保留旧值。
解决方案是您必须在更新请求返回后手动更新selectedProduct
。