如何在ajax表单内部的下拉列表"onchange"事件中提交表单?
根据以下问题: How do you submit a dropdownlist in asp.net mvc,在Html.BeginForm内您可以设置onchange="this.form.submit"并更改下拉列表以返回结果。
然而,在Ajax.BeginForm中使用以下代码:
<% using (Ajax.BeginForm("UpdateForm", new AjaxOptions() { UpdateTargetId = "updateText" })) { %>
<h2>Top Authors</h2>
Sort by: <%=Html.DropDownList("sortByList", new SelectList(ViewData["SortOptions"], new { onchange = "this.form.submit()" })%>
<%= Html.TextBox("updateText")%>
<% } %>
向控制器操作发送回帖,但整个页面都被“updateText”文本的内容替换,而不仅仅是在“updateText”文本框内部分。
因此,整个页面被替换,而非仅仅是Ajax.BeginForm内的区域。
DropDownList调用this.form.submit的正确方式是什么,以便仅替换Ajax.BeginForm内的区域?