2017-08-02 7 views
0

id = "show"の要素をクリックすると、ajaxメソッドでデータを取得します。私はIDを<table>の中に入れた。私の問題は、ajaxでロードした後です。誰かがそれをクリックすると、各アイテム<i>を削除したいと思います。ajaxでロードする要素を選択する方法

<script> 
    $('#show').on('click',function(){ 
     $.ajax({ 
       url:"index.php", 
       method :"post", 
       success: function(data){ 
          for(var j in results){ 
           var data = results[j]; 
           $('tbody').append('<tr><td>'+data['name']+'</td><td>'+data['goods']+'</td><td>'+data['price']+'</td><td>'+data['date']+'</td><td><i id="'+data['id']+'" class="fa fa-times" aria-hidden="true"></i></td></tr>'); 
           } 
          } 
       }); 
    }); 

</script> 
<script> 
    $('i').on('click', function(){ 
    var id = $(this).attr('id'); 
    $.ajax({ 
      data:id, 
      url: "delete.php" 
     }); 
    }); 
</script> 

しかし残念ながら、私は<i>を選択して削除することはできません。

+0

」を選択して「削除」できないことを具体的に説明できますか? –

+0

ユーザーが「」を最初にクリックするとIDが取得され、サーバーに送信され、データベースから削除されます – korush

+0

...これはデータベースから削除されませんか?それとも正しい 'id'が得られないのでしょうか? –

答えて

1

を試してみてください。 data{}に渡す必要があります。以下を確認してください:

$('i').on('click', function() { 
    var id = $(this).attr('id'); 
    $.ajax({ 
    async: false, 
    url: 'delete.php', 
    data: { 
     id: id 
    }, 
    type: "POST", 
    dataType: "json", 
    success: function(data) { 
     // code here... 
    } 
    }); 
}); 
+0

「​​」で「id = shown」をクリックすると、「」が作成されます。 – korush

+0

'id = shown'で' td'をどこに置いていますか?後で 'i'が作成されたとしても、上記のコード試してみましたか?何か誤りがありますか? –

0

はあなたのAJAXを更新する必要があり、この

$(document).on('click', 'i', function(){ 
    var id = $(this).attr('id'); 
    $.ajax({ 
      data:id, 
      url: "delete.php" 
     }); 
    }); 
+0

idは未定義です。 – korush

関連する問題