I'm currently loading my page data dynamically clicking on an element like this:
<a onclick="load('url_of_data')">Some Text</a>
But for a better UX I now want to have an element like this:
<a href="url_of_data">Some Text&</a>
and then just use preventDefault like this;
$("a").click(function(e){
var self = $(this);
var href = self.attr('href');
e.preventDefault();
load(href);
});
I got this code from this问题上加载动态数据。
但它不起作用,该网站仍在重新加载而不是运行该功能。
我现在每次加载动态内容时都应用点击处理程序,并且工作正常。
答案 0 :(得分:0)
您需要指定要将内容加载到的容器div。
$("a").click(function(e){
var self = $(this);
var href = self.attr('href');
e.preventDefault();
//Replace "self" with the container you want to load the content into, e.g. $("#myDiv").load(href);
self.load(href);
});
答案 1 :(得分:0)
您需要在功能结束时添加return false
$("a").click(function(e){
var self = $(this);
var href = self.attr('href');
e.preventDefault();
load(href);
return false;
});
答案 2 :(得分:0)
我认为这将成功。
$('a').click((e) => {
e.preventDefault();
const href = $(e.currentTarget).attr('href');
window.location.href = href;
});
答案 3 :(得分:0)
每次加载动态内容时,我只需要重新应用点击处理程序。
现在它正常工作
答案 4 :(得分:-1)
$("a").click(function(e){
var self = $(this);
var href = self.attr('href');
window.location.assign(href);
});
它可以帮助你