【发布时间】:2012-02-22 18:31:10
【问题描述】:
我有一个绑定到主类 PersonEdit 的主视图 PersonEdit.cshtml - 它在内部是许多模型的容器类,如 BasicInfo、EducaionalInfo、EmploymentInfo 等。 我保存了在 PersonEdit.cshtml 上单击提交的所有信息。 View 由许多局部视图组成,这些局部视图由 AJAX 异步调用的不同 Action 方法加载。 我面临的问题是模型绑定不会在点击 PersonEdit.cshtml 上的提交时发生,因为部分视图中的名称与模型绑定的预期名称不同。
类结构
public class PersonEdit
{
BasicInfo basicInfo { get; set; }
EducationalInfo eduInfo { get; set; }
EmploymentInfo empInfo { get; set; }
}
请建议我在这种情况下如何完成模型绑定。
我正在加载这样的部分视图:
//Basic Info
$(document).ready(function () {
DisplayBasicInfo();
});
function DisplayBasicInfo() {
var $MainContent = $("#divBasicInfo");
var resourceURL = "/Home/Home/GetBasicInfo";
var personID = $("#PersonEdit_PersonID").val();
personID = 0;
$MainContent.css("text-align", "center");
$.ajax({
cache: false,
type: "GET",
async: true,
url: resourceURL,
dataType: "text/html",
data: { personID: personID },
success: function (data) {
$MainContent.html(data);
$.validator.unobtrusive.parse($("#divBasicInfo"));
},
error: function (xhr) {
$('#divBasicInfo').show().html("Unexpected Error in basic Info- Please contact administrator!");
$("#divBasicInfo").dialog({
modal: true,
width: 'auto',
opacity: 0.7,
height: 'auto',
position: 'center',
title: 'Warning',
buttons: {
'OK': function () { $(this).dialog("close"); }
}
});
}
});
}
【问题讨论】:
标签: asp.net asp.net-mvc-3 model-binding