需要帮助..
我有一个index.php
页面。在该页面上,我有page-2.php
的链接。
在page-2.php
,
我还有其他页面的链接。我是否知道如何在page-2.php
页面的同一div中加载index.php
上的链接。
我正在使用jQuery load方法做到这一点。我可以在page-2.php
的{{1}}内加载div
。以下是我制作的代码。
index.php
上面的代码会将我引导到一个不在同一个div上的新页面
答案 0 :(得分:0)
Ajax是异步的。
$('#content').load(page);
以上开始加载第二页
$('a#upd_staff').click(function(){ //link on page2.php
然后尝试将事件处理程序绑定到第2页中的内容,然后完成加载。
因此,当您点击链接时,没有JS绑定到它,因此它充当普通链接。
使用延迟事件处理程序(以便他们侦听文档并检查点击发生时单击的元素)。
$(document).ready(function() {
function ajaxLoad(event) {
event.preventDefault();
var page = $(this).attr('href');
$('#content').load(page);
}
$(document).on("click", "a#staff_info, a#upd_staff", ajaxLoad);
});
答案 1 :(得分:0)
当您点击$('a#staff_info')
时 - 我可以看到您使用e.preventDefault();
来阻止锚标记的正常操作,但是当您点击$('a#upd_staff')
时,您没有使用e.preventDefault();
- 这就是重定向到page2.php
的原因。使用e.preventDefault();
- 这对于下一次点击可能会对您有所帮助
答案 2 :(得分:-1)
您可以使用get()
直接在div上添加:
$(document).ready(function() {
$('a#staff_info').click(function(e){ //link to page-2.php
e.preventDefault();
var page = $(this).attr('href');
$.get(page, function(data, status){
//action on page loaded, data is your page result
$('#content').html(data)
});
$('a#upd_staff').click(function(){ //link on page2.php
var page_info = $('a#upd_staff').attr('href');
$('#content').load(page_info);
});
});
});