Javascript 使用jQuery重新加载ajax内容
我使用下面的方法将页面中的一些内容加载到一个简单的lightbox中 但是,如果一个页面上有多个链接,并且带有Javascript 使用jQuery重新加载ajax内容,javascript,jquery,Javascript,Jquery,我使用下面的方法将页面中的一些内容加载到一个简单的lightbox中 但是,如果一个页面上有多个链接,并且带有class=“ajax page content”,单击链接a加载内容a,但单击链接B也加载内容a,则效果非常好 如何确保为每个链接加载正确的内容 我是否需要使用location.reload或其他工具来重新加载内容 $('.ajax-page-content').click(function(){ var $button = $(this); var url =
class=“ajax page content”
,单击链接a加载内容a,但单击链接B也加载内容a,则效果非常好
如何确保为每个链接加载正确的内容
我是否需要使用location.reload
或其他工具来重新加载内容
$('.ajax-page-content').click(function(){
var $button = $(this);
var url = $button.attr('href');
if ($('#addlee-lightbox-content').length > 0) {
$('#addlee-lightbox-content').show();
$('body').addClass('lightbox-open');
} else {
$.get(url, '', function (data) {
var $content = $(data).find('.col');
var html_content = $content.html();
var lightbox =
'<div id="lightboxcontent">' +
'<div class="lightbox-content animated fadeInDown">' +
'<a href="#" class="lightbox-close"> </a>' +
html_content +
'</div>' +
'<div class="lightbox-bg"> </div>' +
'</div>';
$('body').append(lightbox).addClass('lightbox-open');
});
}
return false;
});
$('.ajax页面内容')。单击(函数(){
var$按钮=$(此按钮);
var url=$button.attr('href');
如果($('#addlee lightbox content')。长度>0){
$(#addlee lightbox content').show();
$('body').addClass('lightbox-open');
}否则{
$.get(url),、函数(数据){
var$content=$(数据).find('.col');
var html_content=$content.html();
var灯箱=
'' +
'' +
'' +
html_内容+
'' +
' ' +
'';
$('body').append(lightbox.addClass('lightbox-open');
});
}
返回false;
});
发生错误是因为脚本中的逻辑。你写的是这样的:
如果存在容器,则显示它
否则,创建容器,填充它,显示它
因此,在第二次单击时,将执行第一个条件。
编辑:逻辑草图应如下所示:
单击链接-获取ajax数据
使用ajax数据填充容器
显示模式
更改是使用单击事件向页面添加(并填充)多个容器。每个容器都应该保存一次单击的ajax数据。
比如:
单击LinkA,获取数据,填充containerA,打开modalA
单击LinkB,获取数据,填充containerB,打开modalB
单击LinkA,打开modalA
链接中的url是什么?你能显示你的HTML吗?这取决于你的HTML结构,也就是元素和类的位置。这应该是可行的。您的代码找到链接(
$button=$(this)
)并使用其href,因此如果每个按钮都有不同的href,则应加载不同的内容。你能确认一下吗?是不是总是加载“内容A”的href=“#”链接?单击此链接时应执行什么操作?它是否应该具有与“ajax页面内容”按钮相同的href?请确保我看到的链接与此类似,那么我将如何修复它?