0

我正在尝试在我的网站上使用 jquery 制作一个加一投票系统。我已经构建了 html/css 结构。我有一个拇指图像,当它悬停在上面时,它变成绿色,当有人点击它时,我希望它添加一个 +1 并随着人们不断点击它而不断增加。

这是它的样子:在此处输入图像描述

因此,当有人点击它时,我希望它在加号右侧添加数字。这是我的html结构。

echo "<div id='thumb_holder'>";
echo "<div id='thumb_report'>";
echo "<a href='mailto:info@cysticlife.org'>";
echo "&#149 report";
echo "</a>";
echo "</div>";
echo "<div  class= 'thumb_counter'>";
echo "+";
echo "</div>";
echo "<div id='thumb_thumb'>";
echo "<!--PHP STUFF-->";
echo "<a class='myButtonLink' href=''></a>";
echo "</div>";
echo "</div>";

非常感谢任何有关如何实现此目标的建议、指导或教程链接。

4

1 回答 1

2

首先,您不必回显所有 html 代码,只需<?php ?>在需要动态内容时使用它。正如 dianuj 建议的那样,您需要使用 ajax。使用 jquery(为简单起见)对您的 ajax 处理公共函数进行 ajax 调用,在那里处理它(例如使用 id 并增加计数器),然后将一些数据返回给客户端。如果 ajax 请求成功,则使用 javascript 更新计数器。

我会给你一个从我的应用程序中获取的例子

codeigniter 部分,在控制器内部,我处理一个提供 imageid 和 userid 的帖子,以检查他们的权限并回显响应。对于更复杂的应用程序,出于各种原因,您应该使用 json。

public function changeImage(){
   if ($this->input->post('imageid')){
   .... handle imageid and userid, check for permissions, query the database..
   ...construct a $response...
   echo $response;
   }
}

在javascript中我使用这样的东西:

$(".dropdown-menu li a").click(function(){

..准备一个 mydata 数组..

        $.ajax({
                type: "POST",
                url: "<?php echo $base_url; ?>pathtocontroller/changeImage",
                data: mydata,

                success: function(data){
                        //update your counter here
                }

        });

});

我认为这回答了你关于如何做到这一点的一般问题。

于 2013-06-05T19:55:11.607 回答