0

我有下表,其中每一行都有一个唯一的 ID。现在我想,如果我单击删除链接,行 ID 将传递给 PHP 文件,从 MySQL 数据库中删除记录,然后选定的行将用 JQuery 魔法隐藏。

<table id="projects_rec">
  <tbody>
    <tr id="MjY=">
      <td>Dany</td>
      <td><a onClick="remove('MjY=')" class="actions">Remove</a></td>
    </tr>
    <tr id="MjU=">
      <td>King</td>
      <td><a onClick="remove('MjU=')" class="actions">Remove</a></td>
    </tr>
    <tr id="MjQ=">
      <td>Test 2</td>
      <td><a onClick="remove('MjQ=')" class="actions">Remove</a></td>
    </tr>   
  </tbody>
</table>

我写

function remove(mid){
    document.getElementById(mid).style.display='none';
}

但是如何将 ID 传递给 PHP 文件,然后以 SLOW 效果隐藏 TR?

4

3 回答 3

1

您可以使用 jquery 通过以下方式隐藏 ID:

$('#'+id).hide('slow');

假设您的 javascript 函数 remove 看起来与此类似。

remove(id)
{
  $.ajax({
    url: url here,
    type: "POST",
    data: {id : id },
    success: function(data)
    {
        var row_id = id.toString().replace(/=/g, "\\=");
        $('#'+row_id).hide('slow');    
    },
    error: function (xhr, textStatus, errorThrown)
    {
        alert("Error");
    }
    });
}
于 2012-05-25T10:28:22.040 回答
0
<tr id="MjQ=">
  <td>Test 2</td>
  <td><a onClick="remove('MjQ=',this)" class="actions">Remove</a></td>
</tr> 

remove函数中

function remove(id,$this){
 //do the php stuff
 $.post('remove.php',{id:id},function(){
   $("#"+id).hide();
 });     
}

在 php 端你可以得到 id 作为

$id=$_REQUEST['id'];
于 2012-05-25T10:27:49.373 回答
0

工作演示 http://jsfiddle.net/feake/

您需要转义=id 中的字符,在示例演示中,我将其替换为 escape\\=并且 Bingo 它可以工作。

这将帮助你!:)

代码

function remove(row_id){
    var foo = row_id.toString().replace(/=/g, "\\=");

    $("#"+foo).css('display','none');

  }​
于 2012-05-25T10:34:22.023 回答