您的位置:首页 > Web前端 > JavaScript

C#【js利用ajax去访问后台代码】

2015-08-27 19:31 519 查看


功能就是 当选择某个表时加载指定的表格数据

思路很简单,对select 标签添加onchange函数,函数返回数据即可
var xmlHttpRequest;
function createXmlHttpRequest() {
if (window.ActiveXObject) {
return new ActiveXObject("Microsoft.XMLHTTP");
}
else
return new XMLHttpRequest;
}
var url = "/Handler/Hl_Ys_input_yem.ashx?tbName=" + escape(text) + "";
//1.创建XMLHttpRequest组建
xmlHttpRequest = createXmlHttpRequest();
//设置回调函数
xmlHttpRequest.onreadystatechange = HuiDiaoFun;
//初始化XMLHttpRequest组建
xmlHttpRequest.open("post", url, true);
//发送请求
xmlHttpRequest.send(null);

//回调函数
function HuiDiaoFun() {
if (xmlHttpRequest.readyState == 4 && xmlHttpRequest.status == 200) {
var b = xmlHttpRequest.responseText;
var items = b.split(",");
var s = "<tr><th style='text-align:left;'>项目</td><th style='text-align:left;'>预算数</th></tr>";
for (var i = 0; i < items.length-1; i++) {
s += "<tr><td style='font-size:14px;color:grey;width:400px;'>" + items[i] + "</td><td><input type='text' name="+i+" class='input radius size-S'></input></td></tr>"
}
document.getElementById("tb").innerHTML = s;
}
}
上面代码是在onchange定义的函数中的,每选一次,都执行一次后台访问,这样就能实现该功能了。
首先不同浏览器类型创建不同的<span style="font-family: Arial, Helvetica, sans-serif;">XMLHttpRequest对象,其次初始化该对象,然后就是发送请求,最后返回数据,<span style="color:#ff0000;">这里要注意的是</span>,虽然代码中回调函数先在了发送请求和初始化前面,但执行顺序并不是这样,并且给回调函数赋值的是函数名称,而不是函数,也就是</span><span style="font-family: Arial, Helvetica, sans-serif;">HuiDiaoFun(),如果后面加了括号,那就真的先执行回调函数了,那么结果就是函数拿不到任何数据,因为请求的代码还没发呢,回调函数的代码暂时可以略过</span>
<span style="font-family: Arial, Helvetica, sans-serif;"><img src="http://img.blog.csdn.net/20150827194124878?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
</span>
<span style="font-family: Arial, Helvetica, sans-serif;">
</span>
上图就是ajax访问的后台代码,这里是一个一般处理程序,也没什么难点,就是查数据库,获取一些字符串,返回给前端,然后js循环遍历数据,以table的形式输出

实现效果图:





.....
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: