php 如何避免在点击锚()标签时刷新页面< a>< /a>?

7rtdyuoh  于 2023-01-19  发布在  PHP
关注(0)|答案(4)|浏览(186)

我正在创建一个动态网站。我的问题是当我单击以下标记时:

<a class="s-inte" href="set_interesantes.php?n=Frank Melo&u=f6e79cfe9c0ecc4c08dac4c860c4802b&back=http://localhost:8085/Something/success/profile.php?search_user=f6e79cfe9c0ecc4c08dac4c860c4802b&p=12&sa=f6e79cfe9c0ecc4c08dac4c860c4802b&i=2345123&dl=&iv=1">Interesante</a>

页面被刷新,我如何避免这种页面刷新?

kgqe7b3p

kgqe7b3p1#

你想要完成的是更新一些感兴趣的计数器,而不是刷新页面?你应该使用 AJAX 技术来做这件事,这就是AJAX被发明的目的。
考虑下面的代码,它非常简单(需要jQuery库):

<a href="#" class="counter">Interesante</a>

<script>
$(function(){
    $("a.counter").click(function()
    {
         $.get("set_interesantes.php?n=Frank Melo&u=f6e79cfe9c0ecc4c08dac4c860c4802b&back=http://localhost:8085/Something/success/profile.php?search_user=f6e79cfe9c0ecc4c08dac4c860c4802b&p=12&sa=f6e79cfe9c0ecc4c08dac4c860c4802b&i=2345123&dl=&iv=1" );
         .... // you can do some animation here, like a "Liked!" popup or something
         return false; // prevent default browser refresh on "#" link
    });
});
</script>
uqzxnwby

uqzxnwby2#

你需要阻止点击事件的默认行为。
您可以执行一个简单的内联处理程序,它将返回false

<a class="s-inte" onclick="return false" href="set_interesantes.php?n=Frank Melo&u=f6e79cfe9c0ecc4c08dac4c860c4802b&back=http://localhost:8085/Something/success/profile.php?search_user=f6e79cfe9c0ecc4c08dac4c860c4802b&p=12&sa=f6e79cfe9c0ecc4c08dac4c860c4802b&i=2345123&dl=&iv=1">Interesante</a>

或者编写一个执行相同操作的jQuery处理程序

$('.s-inte').click(function(e){
    e.preventDefault()
})
iklwldmw

iklwldmw3#

如果你使用 AJAX 动态加载内容,你可能应该用这种方式调用它,这样它将为每个带有.s-inte类的锚工作,无论它是动态还是静态添加的。

$(document).on('click', '.s-inte',function(e){
    e.preventDefault();

    // Do more stuff every anchor click here...
});
gtlvzcf8

gtlvzcf84#

输入href=“javascript:无效(0)”

相关问题