我有MVC动作在数据库中创建记录。
一些字段由用户填充,而另一些字段则由ajax调用(第三方)填充,在获得成功响应后,我使用jquery将字段填充回表单(例如文本框并分配值)对于下拉列表),这种情况发生在客户端。
客户端的表单运行正常,验证也正常运行。
示例如何在ajax响应成功调用后填充客户端的字段:
$("#location").val(response.location);
问题是,当我单击“保存”并到达Create Action (POST)
时,我发现由jquery填充的字段(例如location)即将为Null,但是由用户填充的字段具有值。
请注意:所有字段都以(@Html.Beginform)
的形式存在。
答案 0 :(得分:0)
感谢大家的回复, 我只是发现这个问题有点奇怪。 实际上,当我定义这些字段(将由ajax调用填充)时,我将其定义如下: @ Html.EditorFor(model => model.CurrentLoyalPoints,new {htmlAttributes = new {@ class =“ form-control”,@disabled =“ disabled”,@PlaceHolder = Resources.Captions.CurrentLoyalPoints}),
和问题是使用禁用,我只是用@readonly =“ readonly”替换它。
现在一切正常,如预期。