2011-09-12 17 views
1

このコードを実行すると、最初に実行する必要がありますが、2回目に何も起こりません。どんな助けでも大歓迎です。jqueryの.live()関数は一度しか動作しません

$('.delete_user').live("click",function(){ 
var $id = $(this).attr('id'); 
    var $form = $('#member_search').serialize(); 
     $.post("server_code.php",{id: $id, form: $form}, 
      function(data){ 
      $('#member_row_container').html(data).show(); 
      $('.row_standard:odd').addClass('row_alternate'); 
     }); 
    $(".div_alert").hide(); 
    $(".overlay").hide(); 
    return false; 
    }); 
+0

jsfiddleの作業例を設定してください。問題がどのようなものかを確認してください。 –

+1

何か起こるはずですか?ユーザーを複数回削除できますか? –

+0

あなたのhtmlを提供します –

答えて

0

私はそれが完全にこれに関連しているとは思わないが、間違った形式でデータを送信していた。試してみてください:

$('.delete_user').live('click', function(e){ 
    e.preventDefault(); 
    var form = $('#member_search').serialize(), 
     data = 'id='+this.id+'&'+form; 
    $.post('server_code.php', data, function(html){ 
     $('#member_row_container').html(html).show(); 
     $('.row_standard:odd').addClass('row_alternate'); 
    }, 'html'); 
    $(".div_alert").hide(); 
    $(".overlay").hide(); 
}); 
+0

データはオブジェクトとして送信されているだけですが、このように自動的にエンコードされます。 –

+0

@Gaby a.G. Petrioli: 'id = 123&form = field1%3DValue%2B1%26field2%3DValue%2B2% 26フィールド2%3D値%2B2 'となる。 – Shef

+1

ahhh ..フォームデータが 'form'という名前の単一のフィールドの下に置かれることを意味します。OPが何を達成しようとしているのか分かりませんが、そこにポイントがあります。 –

関連する問題