jQuery表单未提交。 Firebug没有错误

时间:2011-09-26 15:07:34

标签: jquery

这个jQuery不起作用。当我点击投票没有任何反应。当我检查时,div ratecontainer应该消失并且没有任何内容插入到MySQL中。在Firebug中我没有错误。我做错了什么?

echo "<div class='ratecontainer'>   
<form id='rateform' action=''>  
<input type='hidden' id='rateid' value='$stackid' />
<input type='hidden' id='type' value='1' />     
<a class='vote'>Vote</a>
</form>
</div>";

 $(function() {
$('.vote').click(function() {


    var rate= $("#rateid").val();  
    var type= $("#type").val(); 
    var vote = "0";    
    var dataString = 'id=' + rate + '&type=' + type + '&v=' + vote;

      //alert (dataString);return false;
      $.ajax({
        type: "POST",
        url: "/rate.php",
        data: dataString,
        success: function() {

          $('.ratecontainer').hide();

         }
      });
      return false;

});

});

3 个答案:

答案 0 :(得分:0)

我假设你的jquery代码在

里面
 <script type="text/javascript">
 </script>

答案 1 :(得分:0)

我没有立刻看到它。但我知道有一个非常好的jQuery插件可以让你更轻松:http://jquery.malsup.com/form/

你应该让rate.php做一些调试......例如print_r($_POST);

答案 2 :(得分:0)

你的代码应该是这样的:

<div class='ratecontainer'>   
    <form id='rateform' action=''>  
        <input type='hidden' id='rateid' value='<?php echo $stackid ?>' />
        <input type='hidden' id='type' value='1' />     
        <a class='vote'>Vote</a>
    </form>
</div>

<script>
$(function() {
  $('.vote').click(function() {


    var rate= $("#rateid").val();  
    var type= $("#type").val(); 
    var vote = "0";    
    var dataString = 'id=' + rate + '&type=' + type + '&v=' + vote;

     //alert (dataString);return false;
     $.ajax({
       type: "POST",
       url: "/rate.php",
       data: dataString,
       success: function() {

         $('.ratecontainer').hide();

        }
      });
      return false;

  });

});
</script>

并且将其包含在大<?php ?>标记中。假设你的rate.php写得正确(这是一个延伸),这应该有效。 (jsFiddle