-1

仍然是编程和标记新手...

我有几个小的输入/输出按钮,可以从 mysql 表中读取和写入,以跟踪不同的用户是否可用或不可用。但是我只能单击一次按钮来更改状态。之后,它停止响应。我怎样才能让它继续工作?谢谢!!!!

列表.php

<html>
   <head>

   <script src="http://code.jquery.com/jquery-latest.js"></script>

   <script>
      $(function(){
         $(".rating").on("click", function(){
            var status = $(this).attr("id").substr(0,1);
            var id = $(this).attr("id").substr(1);
            var data = "id="+id+"&status="+status;

            $.ajax({
               type: "POST",
               url: "rate.php",
               data: data,
               success: function(e){
                  $("#r"+id).html(e);
               }
            })
         });
      });
   </script>

   <style>.rating { cursor: pointer; }</style>

   </head>

<body>
   <?php

   include ("headers.php");
   $qq = mysql_query("SELECT * FROM $io");


   while($rr=mysql_fetch_array($qq)){
      $id = $rr["id"];
      $content = $rr["status"];

      include("buttons.php");

      $list .= '<div style="border-bottom: 1px #32baed solid">'.$q[0].'
               <div id="r'.$id.'"><img class="rating" id="'.$q[0].$id.'" 
               src="'.$color.'"> '.$status.'</div></div><br><br>';
   }

   echo $list;

   ?>
</body>
</html>

率.php

<?php
include ("headers.php");
$id = $_POST["id"];
$status = $_POST["status"];

if($status == 0){
    mysql_query("UPDATE $io SET status = 1 WHERE id='$id'");
}
else {
    mysql_query("UPDATE $io SET status = 0 WHERE id='$id'");
}
include("buttons.php");

$list = '<img class="rating" id="'.$q[0].$id.'" src="'.$color.'"> '.$status;
echo $list;

?>

按钮.php

<?php

$q = mysql_query("SELECT status FROM $io WHERE id='$id'");
$q = mysql_fetch_array($q);

if($q[0]){
    $color = "green.png";
}
else{
    $color = "red.png";
}

?>

headers.php

<?php

$c = mysql_connect("localhost", "username", "password");
$db = mysql_select_db("likes", $c);


$io = 'io';
?>
4

2 回答 2

2

代替

$(".rating").on("click", function(){

$(document).on("click", ".rating", function(){
于 2013-10-08T13:18:45.033 回答
1

你必须这样做:

$(document).on("click", ".rating", function(){
    //YOUR CODES HERE
});

并确保这些代码不在文档准备功能范围内。

阅读文档以获取有关.on()的帮助

于 2013-10-08T13:19:06.253 回答