Javascript 一次两次使用ajax
您好,我有上面的代码:)但有一个问题,其他文件使用ajaxLink加载多个地址,然后ajax无法工作。它是这样的:第一次单击在后台加载分区,第二次单击由ajax加载的页面不再工作。看起来您替换了整个页面或包含链接的部分,因此事件绑定将不再工作。要使其工作,您应该使用jqueryJavascript 一次两次使用ajax,javascript,jquery,ajax,Javascript,Jquery,Ajax,您好,我有上面的代码:)但有一个问题,其他文件使用ajaxLink加载多个地址,然后ajax无法工作。它是这样的:第一次单击在后台加载分区,第二次单击由ajax加载的页面不再工作。看起来您替换了整个页面或包含链接的部分,因此事件绑定将不再工作。要使其工作,您应该使用jqueryon函数 $(function(){ $('a.ajaxLink').click(function(e){ var l = $(this).attr("href"), getdata; if(l
on
函数
$(function(){
$('a.ajaxLink').click(function(e){
var l = $(this).attr("href"),
getdata;
if(l != null){
e.preventDefault();
$.ajax({
type:'GET',
url:l + '#book',
success:function(result){
getdata = $(result).find('#book');
//$('#content').html(getdata);
$('#content').fadeOut(function(){
$('#book').remove();
$('#content').append(getdata);
});
$('#content').fadeIn(function(){
pos();
});
}
});
}
});
});
使用
.on()
事件处理程序而不是.click()
,因为.on()
可以处理新的DOM元素,但是。click()
不能首先,属性永远不会真正为null
,如果它是空的,它就是一个空字符串。其次,您只是向ajax URL添加了一个哈希,但服务器不读取URL片段,所以天知道为什么,我猜您可能会感到困惑,认为您可以像在load()
中一样过滤结果,但您不能?
$(document).on('click', 'a.ajaxLink', function(e){.... your handler goes here})