0

各行に一意の ID がある次の表があります。ここで、クリックしてリンクを削除すると、行 ID が PHP ファイルに渡され、MySQL DB からレコードが削除され、選択された行が 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の文字をエスケープする必要があり=ます。サンプル デモではエスケープに置き換え\\=、ビンゴで動作します。

これはあなたを助けるでしょう!:)

コード

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

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

  }​
于 2012-05-25T10:34:22.023 に答える