【问题标题】:AJAX and JS for LIKE ButtonLIKE 按钮的 AJAX 和 JS
【发布时间】:2012-05-11 15:05:23
【问题描述】:

我正在尝试学习如何制作 AJAX 脚本 在我的网站上为 LIKE 按钮。我有以下问题:

如果我发送 1 个变量.... id.. 我这样做

data: "action=vote_up&id="+(this).attr("id")",

如果我发送两个变量 id 和 id1,这在语法上是否正确?

  data: "action=vote_up&id="+(this).attr("id")&id1="+(this).attr("id1")",

2) href 属性包含什么? php页面还是AJAX?

<a href =""><img scr="like.png"></a>

3) 首先运行.. php 页面或 AJAX。 4) 我是否必须使用 jQuery 或 Pure Javascript 来运行 AJAX

感谢您的时间和耐心。非常感谢。

【问题讨论】:

    标签: php javascript jquery mysql ajax


    【解决方案1】:

    1) 是的,您可以简单地将其理解为对脚本的 PHP-Get 请求,因此可以使用多个变量,就像 Adam 提到的那样。

    2) 为了向后兼容,您应该只链接到提供相同功能但不依赖 javascript 的 PHP/whatever-Script(并非每个人都启用了 js)。在您的 javascript 中,您只需禁用默认点击操作(请参阅:http://api.jquery.com/event.preventDefault/),否则您只想在启用 js 时允许类似功能,而不是链接到页面锚点“#”。

    3) 页面首先运行。它由服务器处理,然后发送到您的浏览器。在浏览器中收到的 javascript 将开始其操作。

    4) 你在 jquery 中使用的一切都是基于简单的 javascript 函数,但是 jquery 更舒服;) 相当于 jquery 的 ajax 方法是 XMLHttpRequest (http://www.w3schools.com/xml/xml_http.asp)

    【讨论】:

      【解决方案2】:

      这是一个想法,希望对您有所帮助。

      如果handle_vote.php是负责处理赞成票的URL,你必须做两件事:

      1. a href 是带有投票查询字符串的 URL,您的数据就是这种情况。它必须为您的服务器应用程序生成。在没有 javascript 的情况下使用。

      2. 你应该把你的事件放在a onclick事件中处理投票,发送ajax请求,并使用preventDefault jQuery函数来避免默认事件。在这种情况下,a href永远不会被使用,js会抑制链接点击。

      在您的 php 页面中,代码示例几乎是这样的:

      <a class="like" href="handle_vote.php?action=vote_up&id=<?php echo $post_id; ?>"><img src="like.png"></a>
      

      它作为你的 jQuery 脚本:

      $(function() {
          $('a.like').on('click', function(e) {
              e.preventDefault();
              $.get($(this).attr("href"));
          });
      });
      

      您可以随心所欲地进行个性化,这只是如何做到这一点的想法。

      【讨论】:

        【解决方案3】:

        &lt;a href ="#"&gt;&lt;img scr="like.png"&gt;&lt;/a&gt; 在该链接上放置 onclick 事件,并发出 AJAX 请求以增加计数,成功响应时更新计数单击按钮。你忘了一件事,你应该保存那个按钮的状态。因为一个用户可以访问您的网站并点击 1000 次。

        【讨论】:

        • 感谢您的回答。但是,我不熟悉如何实现按钮的状态以避免用户多次单击。这可以用 mysql WHERE 和 AND 查询来完成吗?
        • 这个 mysql 用于增加点击次数,你应该在服务器端对 AJAX 请求的女巫响应执行此操作,我认为你应该将状态保存在 SESSION 或 COOKIES 中以供当前用户使用。并取决于它们的状态,打印活动或非活动按钮。
        • 或者您可以在DB字段中设置它,并检查FROM数据库。您应该为该用户保存 user_id 或 user_session 和 like_button 状态。
        猜你喜欢
        • 1970-01-01
        • 2017-08-24
        • 1970-01-01
        • 2011-09-03
        • 2013-11-04
        • 2011-12-06
        • 2016-06-20
        • 1970-01-01
        • 2021-05-29
        相关资源
        最近更新 更多