2012-09-17 19 views
1

我的,我想從使用AJAX淡出數據庫,並從使用Javascript當前視圖中刪除註釋此列表。如何在jQuery的多個值傳遞給函數

我調用這個函數removeComment()它發送的div的ID被刪除服務器(ID也被排在數據庫ID)

這個問題我已經是,之後我運行的功能第一次,它停止工作。

jquery code 

function removeComment(PostId) { 

    var commentid = 'com' + PostId; 

    $(document).ready(function() { 
     $(commentid).fadeToggle('slow'); 

     // send to php script 
     $.ajax({ 
      type: 'POST', 
      cache: false, 
      url: 'actions/adminProcessor.php', 
      data: 'action=removeComment' + '&PostId=' + PostId, 
      success: function(done) { 
       alert(done); 
      } 
     }); 
    }); // <-- Sorry, was missing a '}' 
} 

以下是評論列表的HTML和functionis怎麼叫

    <div class="comments" id="com3"> 
     <label><admin>UD</admin></label><a href="Javascript:removeComment('1')">Remove</a> 
     <span>17/09/12</span> 
     <p>adfadfadfadf</p> 
     </div> 
    <div class="comments" id="com3"> 
     <label><admin>UD</admin></label><a href="Javascript:removeComment('3')">Remove</a> 
     <span>17/09/12</span> 
     <p>adfadfadfadf</p> 
     </div> 

請我想知道我聽錯了

下面

是PHP腳本

  if($action == "removeComment"){ 
      extract($_POST) ; 
      $query = "DELETE FROM comments WHERE id = '$cId'" ; 
      $result = mysql_query($query); 
      } 
+2

**警告**您的代碼非常容易受到sql注入攻擊! –

+1

你的文字很難讀,這是一個巨大的句子。如果你將文本和代碼格式化得更好一些,你會得到更多有用的迴應。 –

+0

格式您的問題及代碼更好,很難讀它 –

回答

1

你不應該換你的行爲放到一個$(document).ready功能。您應該詳細瞭解$(document).ready的含義。此代碼現在應該可以工作:

function removeComment(PostId) { 
    var commentid = 'com' + cid; 
    var coms = document.getElementById(commentid); 
    $(coms).fadeToggle('slow'); 
    $.ajax({ 
     type: 'POST', 
     cache: false, 
     url: 'actions/adminProcessor.php', 
     data: 'action=removeComment' + '&PostId=' + PostId, 
     success: function (done) { 
      alert(done); 
     } 
    }); 
} 
+0

的問題是在點擊一個div時,剩下的點擊時不要淡出 –

+0

@ BrownBoyUdswagzK'net我不知道他們做。這是因爲'$(文件).ready'包裹的東西 –