2011-09-21 76 views
0

阿贾克斯不工作我如何使用AJAX我的MVC3项目有问题。我已经做了几项设置使用它就像母版页中添加一些脚本和改变一些东西在web.config文件等当我发布到我的MVC3项目

其实所有这些事情之后,我的项目工作正常在我的本地服务器。但是当我发布它时,ajax的东西不再起作用了。

你对解决这个问题有什么想法吗?我们要做什么? 如果有人能帮助我,那将会很棒。

在此先感谢。

这些东西都是在我的母版页。

<script src="/Scripts/MicrosoftAjax.debug.js" type="text/javascript"></script> 
    <script src="/Scripts/MicrosoftMvcAjax.debug.js" type="text/javascript"></script> 
    <script src="/Scripts/jquery.unobtrusive-ajax.min.js" type="text/javascript"></script> 

而这些都是从web.config中我刚才改变UnobtrusiveJavaScriptEnabled值从 “真” 到 “假”

<configuration> 
    <appSettings> 
    <add key="inspector" value="EmrTelInspector" /> 
    <add key="browserExpireCookie" value="EmrTel" /> 
    <add key="webpages:Version" value="1.0.0.0" /> 
    <add key="ClientValidationEnabled" value="true" /> 
    <add key="UnobtrusiveJavaScriptEnabled" value="false" /> 
    </appSettings> 

回答

1

替换:

<script src="/Scripts/MicrosoftAjax.debug.js" type="text/javascript"></script> 
<script src="/Scripts/MicrosoftMvcAjax.debug.js" type="text/javascript"></script> 
<script src="/Scripts/jquery.unobtrusive-ajax.min.js" type="text/javascript"></script> 

有:

<script src="@Url.Content("~/Scripts/MicrosoftAjax.debug.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/MicrosoftMvcAjax.debug.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")" type="text/javascript"></script> 

或者如果您使用的是W ebForms视图引擎:

<script src="<%= Url.Content("~/Scripts/MicrosoftAjax.debug.js") %>" type="text/javascript"></script> 
<script src="<%= Url.Content("~/Scripts/MicrosoftMvcAjax.debug.js") %>" type="text/javascript"></script> 
<script src="<%= Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js") %>" type="text/javascript"></script> 

之所以在发布是因为在IIS虚拟目录,以便正确的网址不再/Scripts/MicrosoftAjax.debug.js/NameOfYourApplication/Scripts/MicrosoftAjax.debug.js您的代码不起作用。

出于这个原因,你永远不应该硬编码的任何URL在ASp.NET MVC应用程序。您应该始终使用url助手来确保此应用程序无论在何处部署都能正常工作。

+0

达韩很多。尤其是对于快速回答。 但不幸的是,它仍然无法正常工作。我不知道我需要使用@ url.content ... 我已经替换了它们。也许我在某个地方也会犯更多的错误。 – serhads

+0

@serhads,你可以使用FireBug或Chrome开发者工具来分析所有正在下载的资源,并确保路径正确,并且你没有收到404错误。 –

+0

<形式行动= “/荧光屏/ getMulkSahibi” ID = “form0” 方法= “POST” 的onclick =“Sys.Mvc.AsyncForm.handleClick(这一点,新............. @达林我需要更换actiion路径或其他东西? – serhads

相关问题