IT码农库

您当前所在位置:首页 > 网络编程 > ASP.NET

ASP.NET

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

网络 2012-03-12ASP.NET9923
asp.net的网站,访问时提示不支持 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>
大图广告(830*140)