在部分视图中,有一个使用 Html.Helper 类(TextBoxFor、DropDownListFor 等)的表单(@addName)。
@model Models.ADP
using (@Html.BeginForm(new { id= @addName}))
{
@Html.TextBoxFor(model => model.EndValue, new { id = @newName, size = "5", style = "margin-right: 10px" })
@Html.HiddenFor(model => model.ModuleTypeId, new { @Value = @ViewBag.ModuleId }
@Html.DropDownListFor(model => model.DPId, @dpList, "Choose an Option...", new { @class = "select" })
}
我拦截提交以便异步发布和检索新数据,divId 是整个部分视图的 div。
$('#@saveName').click( function (event) {
event.preventDefault();
$.ajax({
url: '@Url.Action("SaveADP", "Dispense")',
type: 'POST',
data: $('#@addName').serialize(),
success: function (data) {
$('#@divId').html(data);
}
})
})
正在调用 SaveADP 操作,但唯一具有设置值的字段是 EndValue,其他字段(ModuleTypeId 和 DPId)具有默认值而不是它们的表单值。我在这里做错了什么?