我在动态局部视图数据在文本框中消失后遇到问题。这是我的场景:MVC动态局部视图数据在IE7中消失
用户单击一个单选按钮,并且动态加载共同部分视图。
的Index.aspx(嵌入的JavaScript):
function showCoApplicant() {
$.ajax({
type: "GET",
url: '<%= Url.Action("LoadCoApplicantInfo","Application") %>',
data: {},
dataType: "html",
async: true,
success: function (data) {
$("#CoApplicantInfo").html(data);
}
}); }
ApplicationController.cs:
public ActionResult LoadCoApplicantInfo() {
Configurator.Models.CreditApplicationModel model = null;
if (Session["model"] != null)
model = (Configurator.Models.CreditApplicationModel)Session["model"];
return PartialView("CoApplicant", model);
}
CoApplicant.ascx:
<table>
<tr>
<th>
<%= Html.LabelFor(model => model.CoApplicant.FirstName)%>
</th>
<td>
<%= Html.TextBoxFor(model => model.CoApplicant.FirstName)%>
<%= Html.ValidationMessageFor(model => model.CoApplicant.FirstName)%>
</td>
</tr>
</table>
用户在数据进入,并点击提交按钮。该模型然后在控制器中验证。如果ModelState无效,我会返回视图以及会话中的模型(我这样做是因为我需要将该模型返回到部分视图,这是我可以将数据返回给它的唯一方法)。在Javascript中的httppost上,我确定是否应该显示共同部分视图,如果是,则通过调用showCoApplicant()再次加载它。
[HttpPost]
public ActionResult Index(Configurator.Models.CreditApplicationModel model)
{
if (!ModelState.IsValid)
{
Session["model"] = model;
return View();
}
}
这是我遇到问题的地方。 IE7中缺少共享程序的数据。它在IE,Chrome和Firefox的其他版本中工作正常。为什么在IE7中缺少数据?我怎样才能让它显示?
这个伎俩!谢谢!! – Trisney 2010-12-14 21:41:13