我正在使用Kendo Grid进行POPUP编辑。
在编辑POPup时,我有一个如下文本框。
@Html.TextBoxFor(model => model.FirstName, new { style = "width:175px" })
然后我使用Jquery
设置此文本框值 $("#FirstName").val("my name");
当我提交弹出窗口以保存值时,它不会将这些值传递给控制器。但是,如果我在文本框中键入一个值,那么它可以正常工作。
为什么它不能处理通过Jquery设置的值?
答案 0 :(得分:3)
由于某些旧的原因,直接在jquery的编辑器弹出/模板上设置的值不会更新模型。我也面临同样的问题,下面是我的解决方案。
var uid = $(".k-edit-form-container").closest("[data-role=window]").data("uid"),
model = $("#myGrid").data("kendoGrid").dataSource.getByUid(uid);
model.set("FirstName", "my name");
如果这不是你想要的,请告诉我!
答案 1 :(得分:2)
有一个更简单的解决方案:
$("#FirstName").val("my name").trigger("change");