gpt4 book ai didi

asp.net-mvc - Asp.Net Ajax.BeginForm 和 UpdateTargetId 不起作用

转载 作者:行者123 更新时间:2023-12-02 20:09:02 25 4
gpt4 key购买 nike

我在HomeController中有这个:

public ActionResult Details(string id)
{
var customer = Customers.GetCustomersById(id);
return PartialView("CustomerDetails", customer);
}

Index.aspx中:

<div>
<% using (Ajax.BeginForm("Details", new AjaxOptions
{
UpdateTargetId = "customerDetails",
InsertionMode = InsertionMode.Replace,
HttpMethod = "POST"
}))
{ %>
<p>
Customer:
<%=Html.DropDownList("id")%></p>
<p>
<input type="submit" value="Details" /></p>
<% } %>
</div>
<div id="customerDetails">
</div>

最后在CustomerDetails.ascx中我有:

  <fieldset>
<legend>Fields</legend>
<p>
Name:
<%= Html.Encode(Model.Name) %>
</p>
<p>
Credit:
<%= Html.Encode(Model.Credit) %>
</p>
<p>
CustomerID:
<%= Html.Encode(Model.CustomerID) %>
</p>
</fieldset>
<p>
<%=Html.ActionLink("Edit", "Edit", new { /* id=Model.PrimaryKey */ }) %> |
<%=Html.ActionLink("Back to List", "Index") %>
</p>

CustomerDetails.ascx 是通过右键单击“详细信息”方法并选择“添加 View ”,然后选择部分 View 和强类型 View 来生成的。

我希望它能够以“Ajax 方式”更新 Index.html 中名为“customerDetails”的 div 中的客户详细信息。问题是,按详细信息按钮后,会打开一个新页面,其中包含正确的详细信息。输出页面没有母版页颜色或布局。

如果我在详细信息方法中进行调试,则客户对象的内容是正确的。

感谢任何帮助!

/pom

最佳答案

最可能的罪魁祸首是您没有在页面上包含 MicrosoftAjax.js 和 MicrosoftMvcAjax.js。这会导致 javascript 失败,因为它找不到必要的函数,并且表单通过 Ajax 正常提交。

关于asp.net-mvc - Asp.Net Ajax.BeginForm 和 UpdateTargetId 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1617642/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com