锚点标签更新div而不需要重新加载页面

3
我有一个包含锚点标签的div,该标签加载一个php脚本,该脚本将信息添加到数据库并返回到此页面。我希望使用这个锚点标签运行该php脚本,更新数据库并刷新此div而不重新加载页面。该php脚本需要使用php $_GET []函数中的两个变量title和vote。是否可以实现这一点,如果可以,如何实现?我已经搜索了所有地方,没有脚本能够正常工作。如果需要更多信息,请提供。非常感谢,将为每个帮助过我的人给予认可。
      <div class='like_box'>
                <a href='#' class='counter' ><img src='img/like.png' class='vote'></a><p class='vote_text'>$like_num</p>
                <p style='color: #fff;'>$like_username</p>
      </div>

我尝试过类似这样的东西。
        <script>
           $('a.counter').click( function(e) {
              e.preventDefault();
              vote.php?vote=like&title=$title
           });
        </script>

1
当您像这样使用href时,它是一个刷新页面的GET请求。相反,使用onclick在锚标签上并执行preventDefault来使用ajax。 - kukkuz
1
当 Ajax 请求成功时,请更新您的变量 $like_num 和 $like_username。 - kukkuz
非常抱歉,我想问一下,您是否可以写一点伪代码之类的东西来向我展示如何做到这一点?如果不麻烦的话,我已经尝试了几种不同的选项,但是都没有成功。非常感谢。 - Waggoner_Keith
1
展示你所尝试的。 - user557846
jQuery文档中有示例。 - nnnnnn
显示剩余3条评论
1个回答

2
请使用以下内容:
 <div class='like_box'>
                <a href='#' class='counter' ><img src='img/like.png' class='vote'></a><p class='vote_text'>$like_num</p>
                <p class="vote_text1" style='color: #fff;'>$like_username</p>
      </div>

在Javascript(JQuery)方面
$(".like_box a").click(function(event){
        event.preventDefault();
        $.ajax({
    url: 'vote.php?vote=like&title=$title', 
    success: function(result){
            // update $like_num and $like_username here
            // if you do not have them binded use this
            $('.like_box p.vote_text').text('<value from result>');
            $('.like_box p.vote_text1').text('<value from result>');
        }});
    });

非常感谢您抽出时间。 - Waggoner_Keith

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接