您好,登录后才能下订单哦!
这篇文章将为大家详细讲解有关如何实现Ajax叠加,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
最近在做人事管理系统的一个签到功能,首先是把部门当做参数,把参数用Ajax发送到数据库进行查询,然后以表格形式动态生成员工信息到返回页面的Div里,表格最后的一列是签到按钮,这时我想用JQuery继续获取被点击的“签到”按钮,然后用Ajax将数据发送到数据库签到表,更新签到表,于是我就把每个签到按钮的id属性设置成第一次Ajax返回的每个员工信息的工号,再次用JQuery获取,怎么获取呢?想到了标签加事件选择器,于是写了下面代码:
代码如下:
$(function(){
$("tr input:button").click(){
$.ajax({
type: "POST",
url: "page_helper.ashx",
data: "name=K&pid" + $(this).attr("id"),
success: function (html) {
$("#ReturnHTML").html(html);
},
error: function () {
alert("服务器繁忙,请稍后再试!");
}
});
}
});
可是后来点击却发现没有获取到点击事件,点击按钮根本就没有反应,当我用浏览器查看返回的源码的时候,发现原来Ajax返回的HTML代码根本就没有被添加到页面中,这回怎么办呢?后来去百度里检索了半天,都说Ajax返回的数据无法用浏览器查看到源码,因为是异步的,检索了一天,头又大又疼,于是就晚上了,每次遇到大的问题,就赶紧睡觉,在梦中想实现方法,这样一方面可以休息,另一方面也可以解决问题,一般的时候第二天问题都会有答案,也都能实现。
第二天早晨醒来,思路还是没有,我想这次应该是大问题了,是不是我想要实现的不可能实现呢?百度里几乎没有用两次Ajax请求的,无奈之下在QQ空间发布了悬赏求助,悬赏是宴请三天三夜,后来终于我伟大的高中同学给了我帮助,当然不是因为悬赏才帮助我的,哈哈哈。
高中同学是这么说的,Jquery中有个live方法,可以获取动态生成的HTML代码元素,后来我就把live方法敲了进去,看了有三个参数event,data,function;于是查看了Jquery的帮助文档。
event:必需,规定附加到元素的一个或多个事件,由空格分隔多个事件。必须是有效的事件。
data:可选,规定传递到该函数的额外数据。
function:必需,规定当前事件发生时运行的函数。
这时的我这时大旱逢甘霖啊,于是写下下面代码:
复制代码 代码如下:
$(function(){
$("tr input:button").live("click", function () {
$.ajax({
type: "POST",
url: "page_helper.ashx",
data: "name=JS&pid=" + $(this).attr("id") + jsparam(),
success: function (html) {
alert(html);
},
error: function () {
alert("服务器繁忙,请稍后再试!");
});
}
});
关于“如何实现Ajax叠加”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。