0

我有一个显示用户数据的表。每行可以有 2 个功能,一个用于删除,另一个用于编辑记录。该行本身有一个 id,我需要为删除和编辑功能引用它。我很难让它正常工作。

右侧的最后一个单元格用于删除图像。当我仅单击删除图标时,即使我在not().

我遇到的最后一个问题$.post是没有传递任何 POST 值。即使我手动设置它,我也无法在服务器端看到它。

到目前为止,这是我的代码。

$('#drafts').find('tr').not(':first-child, td.delete').click( function(){
  alert(this.id);
});

$("td.delete").click(function(){
  var id = this.id;
  $.post('test.php',id, function(){
    $('#'+id).remove();
  },'json');
});

<tr id="5">
  <td>test1</td>
  <td>test2</td>
  <td class="delete">&nbsp;</td>
</tr>
4

2 回答 2

2

使用此代码:

$("td.delete").click(function(){
  var id = $(this).parents('tr').eq(0).attr('id');
  $.post('test.php', {'id': id}, function(){
    $('#'+id).remove();
  },'json');
});

这是你的edit行动(但我不知道你想在这里做什么):

$("td.edit").click(function(){
  var id = $(this).parents('tr').eq(0).attr('id');

  // now you have `id` of current row
  // write your code here
});

你说你想要整edit行动作,除了delete单元格:

$("tr td:not(.delete)").click(function(){
  var id = $(this).parents('tr').eq(0).attr('id');
  $.post('test.php', {'id': id}, function(){
    $('#'+id).remove();
  },'json');
});
于 2013-01-05T05:22:04.063 回答
1

不需要使用 ID 进行删除。只需遍历树到行:

$("td.delete").click(function (){
  var $row = $(this).closest('tr');
  $.post('test.php',{id: $row.attr('id')}, function(){
    $row.remove();
  },'json');
});
于 2013-01-05T05:24:05.450 回答