Javascript 如何让Ajax表单提交在ASP.net MVC中工作?

Javascript 如何让Ajax表单提交在ASP.net MVC中工作?,javascript,asp.net-mvc,ajax,form-submit,Javascript,Asp.net Mvc,Ajax,Form Submit,我对AJAX和Javascript非常陌生,我正在尝试实现表单提交的示例来更新页面的一部分。我几乎一字不差地照搬了他的例子,但我似乎无法使它起作用。当我单击submit按钮时,控制器操作被成功调用,但结果在浏览器中作为一个新页面呈现,而不是只更新我在Ajax表单中指定的范围 以下是我的查看代码: <asp:Content ID="indexHead" ContentPlaceHolderID="head" runat="server"> <title>Home P

我对AJAX和Javascript非常陌生,我正在尝试实现表单提交的示例来更新页面的一部分。我几乎一字不差地照搬了他的例子,但我似乎无法使它起作用。当我单击submit按钮时,控制器操作被成功调用,但结果在浏览器中作为一个新页面呈现,而不是只更新我在Ajax表单中指定的范围

以下是我的查看代码:

<asp:Content ID="indexHead" ContentPlaceHolderID="head" runat="server">
    <title>Home Page</title>
</asp:Content>

<asp:Content ID="indexContent" ContentPlaceHolderID="MainContent" runat="server">

    <% using (Ajax.BeginForm("TestAction", new AjaxOptions { UpdateTargetId = "target" }))
       { %>

        <%= Html.TextBox("TextBox")%>
        <input type="submit" value="Submit" />
        <span id="target" />

    <% } %>

</asp:Content>
我在母版页中包括了以下几行

<script src="../../Scripts/MicrosoftMvcAjax.debug.js"type="text/javascript"></script>  
<script src="../../Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script> 
<script src="../../Scripts/MicrosoftAjax.js" type="text/javascript"></script> 

但它所做的似乎只是调用操作并将结果呈现为新页面,而不是更新目标范围。下面是一些小屏幕截图来说明发生了什么


有什么想法吗?

只是把一些想法扔出去

您的控制器操作在这样定义的类中

public class MyController : Controller

显然,类的名称必须以单词controller结尾。

您的母版页中包含的javascript顺序错误。 重新排序,使MicrosoftAjax.js包含在三个文件中的第一个文件中,这样它就可以工作了

<script src="../../Scripts/MicrosoftAjax.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script>

我正在使用默认的HomeController,因此是的,它被称为HomeController和extends Controller。
<script src="../../Scripts/MicrosoftAjax.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script>