2016-03-28 5 views
0

どうしたの? look ...私は私のWebページのためのコメントシステムを持っています...そして私はこの小さな問題を1週間にわたって扱ってきました。私は本当にここx_xの助けが必要です...ユーザーが私のページにコメントを残すと、このコメントは自動的にAJAXのおかげで表示されます、それはokです...jqueryイベント(送信時)は、ボタンがクリックされた唯一のものではなく、すべてのdivに影響しますか?

各コメントに投票できます。ここに私の問題があります...投票のためのフォームを含むこれらのdivは動的にビルドされています。私は、コメントをフォームに送信するボタンをクリックすると、その結果のデータがすべてのコメントに表示されます。送信ボタンがクリックされた特定の場所に表示されるのではなく、この時点で何をすべきかわからないので、私に手を差し伸べてください。これは私のコード

形式です:

<label > Vote </label> 
<form action="vote.php" method="POST" class="form-vote" id="form-vote"> 
<button class="icon-thumbs-up" id="icon-thumbs-up"></button> 
<input hidden="hidden" type="text" name="num-comment" id="num-comment" value="'.$d['id'].'" > 
<input hidden="hidden" type="text" name="point" id="point" value="'.$d['point'].'" > 
<p id="actual-points" class="actual-points"> '.$d['point'].'</p> 
<div id="result" class="result"> </div> 
</form> 

スクリプト:

<script type="text/javascript"> 
$(document).ready function() { 

    $('.form-vote')on('submit', function() { 

     $.ajax({ 
      type: 'POST', 
      url: $(this).attr('action'), 
      data: $(this).serialize(), 
      success: function(data) { 

           $('.actual-points').hide(); 
           $('.result').html(data).fadeIn('slow'); 
      } 
     }) 
     return false; 
    }); 
}) 
</script> 

答えて

1

あなたは、元のイベントの「この」オブジェクトを保存して、このような成功関数内でそれを使用してみました:

$('.form-vote')on('submit', function(e) { 
    e.preventDefault(); 
    var $form = $(this); // Save here 

    $.ajax({ 
    type: 'POST', 
    url: $(this).attr('action'), 
    data: $(this).serialize(), 
    success: function(data) { 
     // use here 
     $form.find('.actual-points').hide(); 
     $form.find('.result').html(data).fadeIn('slow'); 
    } 
    }) 
    return false; 
}); 
+0

も ​​'..function(e)にしたいことがあり{e.preventDefault()...}' – ThrowsException

+0

@ThrowsExceptionは、私は、これらの変更を試みた – KiiroSora09

+0

にそれを追加しましたが、それ私はPHPファイルに私を送信する、それは、アヤックスは動作しないか、またはメソッドを防止するフォームが提出を停止しないようだ – kukiko11

0

変更この:

これに
$('.result').html(data).fadeIn('slow'); 

$(this).find('.result').html(data).fadeIn('slow'); 
+0

私はこれを行うと、divのデータを返さない... – kukiko11

関連する問題