关于服务器或虚拟主机不支持 AjaxPro 的问题终极解决方法

  方法为:在网站属性中 --》》 主目录 --》》配置 --》》 添加一个 .ashx 文件的映射 就可以了 ,

  映射的文件路径在:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll 扩展名:

  .ashx 动作:GET,HEAD,POST,DEBUG

  检查文件是否存在的勾去掉

  首先要在Web.config的<system.web>中添加下面的东东

  <httpHandlers>

  <add verb="POST,GET" path="AjaxPro/*.ashx" type="AjaxPro.AjaxHandlerFactory, axPro" />

  或(看版本)

  <add verb="POST,GET" path="ajaxpro/*.ashx" pe="AjaxPro.AjaxHandlerFactory,AjaxPro.2"/>

  </httpHandlers>

  然后在服务器端的Page_Load中添加下面一行代码

  AjaxPro.Utility.RegisterTypeForAjax(typeof(index));

  下面来实现如何在客户端用javascript调用服务器端的方法

  服务器端的方法,返回一个DataSet

  

复制代码 代码如下:

  [AjaxPro.AjaxMethod]

  public DataSet Change()

  {

  string str="select xjh,xm from xs_jbxx";

  ds=cla.Bind(str);

  return ds;

  }

  然后在客户端调用这个方法

  

复制代码 代码如下:

  <script language="javascript">

  function Change()

  {

  WebServer.index.Change(change_callback)

  }

  function change_callback(response)

  {

  var ds=response.value;

  var content=document.getElementById("newDG");

  var table=null;

  for(var i=0;i<ds.Tables[0].Rows.length;i++)

  {

  if(i==0)

  {

  table=ds.Tables[0].Rows[i].xm+"<br>";

  }

  else

  {

  table+=ds.Tables[0].Rows[i].xm+"<br>";

  }

  }

  content.innerHTML=table;

  }

  </script>