Ajax不起作用....

    今天把.net2.0的项目用vs2008打开,却发现项目中的ajax不起作用了,vs2008中已经安装了ajax,为啥不起作用了呢,最后才知道原因是这样:

ajax只能在.net2.0以上使用,由于.net3.5上已经集成了ajax,所以不用安装ASPAJAXExtSetup.msi,但是.net2.0没有集成,所以要安装ajax,果然,安装后,项目的ajax可以使用了,另外,还有一种方式,需要web.config和两个dll,就可以不用安装ajax,在web.config中添加以下代码:

<httpHandlers>
      <remove verb="*" path="*.asmx"/>
      <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
      <add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false"/>

    </httpHandlers>

    <httpModules>
      <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>

    </httpModules>

然后再bin中添加

System.Web.Extensions.Design.dll,

System.Web.Extensions.Design.dll.refresh,

System.Web.Extensions.dll,

System.Web.Extensions.dll.refresh

下载地址:https://files.cnblogs.com/shuang121/System.Web.Extensions.dll.rar

页面中加上Page指令:<%@ Register Assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
    Namespace="System.Web.UI" TagPrefix="asp" %>

有的时候节点<xhtmlConformance mode="Legacy"/>也会致使ajax无效,这个时候可以改下值<xhtmlConformance mode="Transitional"/>,或者将其删除也可以..

多思考,多创新,才是正道!
原文地址:https://www.cnblogs.com/shuang121/p/2081076.html