Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带有部分视图的Ajax:获得完整的回发_Ajax_Asp.net Mvc 3 - Fatal编程技术网

带有部分视图的Ajax:获得完整的回发

带有部分视图的Ajax:获得完整的回发,ajax,asp.net-mvc-3,Ajax,Asp.net Mvc 3,我有一个视图,试图在其中执行ajax调用(使用MVC ajax支持),并将返回的部分视图插入页面上的div。据我所知,我所做的一切都是照章办事。但是我得到的不是Ajax调用和更新的div,而是完整的回发 以下是视图的相关部分: <fieldset> <legend>Available Instructors</legend> <p> @{ using (Ajax.BeginForm("InstructorSearch", "CourseS

我有一个视图,试图在其中执行ajax调用(使用MVC ajax支持),并将返回的部分视图插入页面上的
div
。据我所知,我所做的一切都是照章办事。但是我得到的不是Ajax调用和更新的
div
,而是完整的回发

以下是视图的相关部分:

<fieldset>
<legend>Available Instructors</legend>

<p>
    @{ using (Ajax.BeginForm("InstructorSearch", "CourseSection", new AjaxOptions() { UpdateTargetId = "divSearchResult" })) 
       {

        @Html.Raw(" Search: ")
        <select id="SearchType" name="SearchType">
            <option value="Last" @( (ViewBag.SearchType == "Last") ? " selected" : "")>Last Name</option>
            <option value="First" @( (ViewBag.SearchType == "First") ? " selected" : "")>First Name</option>
        </select>
        @Html.Raw(" ")
        <input type="text" id="SearchText" name="SearchText" value="@( ViewBag.SearchText)" />
        @Html.Raw(" ")
        <input type="submit" id="Search" name="Search" value="Search" />
       }
    }
</p>

<div id="divSearchResult"></div>
</fieldset>
我已经检查过了,正在加载MicrosoftJax.js和MicrosoftMvcAjax.js

所以我被难住了。我知道我可以很容易地在jQuery中完成所有这一切,我在其他地方也做过,但由于不值得深入探讨的原因,在这种情况下,如果能够实现这一点,它将是最简单、最干净、最容易理解的解决方案

我已经检查过了,正在加载MicrosoftJax.js和MicrosoftMvcAjax.js

这些脚本在ASP.NET MVC 3中已过时。您可以从站点中完全删除它们。它们是无用的。如果您是从以前的版本升级,则仅出于向后兼容性考虑才包括它们。在这种情况下,您必须在web.config中显式禁用不引人注目的AJAX:

<!-- Remark: don't do this => only for demonstration purposes -->
<add key="UnobtrusiveJavaScriptEnabled" value="false"/>
F*ing Microsoft——默认的MVC模板不包括对jquery.unobtrusive-ajax的引用,而且可能应该包括,因为@Html.ajax需要它。。。多亏了这一天。此外,仅供参考,您可能需要参考缩小版
<!-- Remark: don't do this => only for demonstration purposes -->
<add key="UnobtrusiveJavaScriptEnabled" value="false"/>
<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.js")" type="text/javascript"></script>