0

ユーザーのデータを表示するテーブルがあります。各行には2つの機能があり、1つは削除する機能、もう1つはレコードを編集する機能です。行自体には、削除機能と編集機能の両方で参照する必要のある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 に答える