gpt4 book ai didi

asp.net-mvc - Ajax.BeginForm UpdateTargetId 不适用于 DropDownList

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

代码:

<% using (Ajax.BeginForm("GetResourcesByProject", "CreateRequest", new AjaxOptions { UpdateTargetId = "ResourceListDiv"}))
{
Response.Write(Html.DropDownList("SelectProject", Model.ProjectList, "Select Project", new { onchange = "this.form.submit();" }));
} %>

当我运行页面时,我会得到正确的 Controller 操作,以使用表单集合中的正确数据来触发:

public ActionResult GetResourcesByProject(FormCollection formCollection)
{
var resourceModels = (from project in POTSModel.ProjectList
where project.Id == Convert.ToInt32(formCollection["SelectProject"])
select project).First().Resources;

return PartialView("ResourceList", resourceModels);
}

它在 Ajax.ActionLink 中工作正常,如下所示:

<%= Ajax.ActionLink("Select", "GetResourcesByProject", "CreateRequest", new { projectId = item.Id }, new AjaxOptions { UpdateTargetId = "ResourceListDiv" })%>

当帖子发生时,我会导航到一个新页面,而不是停留在现有页面上并更新 div 的内容。

谢谢。

最佳答案

submit() 可能不会触发 Ajax.BeginForm,因此它会像平常的帖子一样处理。例如:Additional jQuery events submitting my Ajax.BeginForm 。或者添加提交按钮(可能隐藏)并调用其 .click()。

关于asp.net-mvc - Ajax.BeginForm UpdateTargetId 不适用于 DropDownList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1602832/

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