2009-07-27 3 views
0

これは、すでにここに答えを持っているかもしれませんが、私は右の検索文字列を見つけることができないよう..私は持っている複数の同じPartialsViewsとJSON

を、SOのコメント、持っているページとほぼ同じ同じPartialViewの多くのインスタンス。

パーシャルビューには、PartialViewが表す製品に関連付けられたコメントを追加するボタンがあります。

私は完全なポストバックを行い、すべてのコメントが更新されても簡単にこの作業を行うことができますが、それは醜い解決策です。

私が必要とするのは、押されたボタンです。サーバーへのJsonコールが必要です。私は、コメントを保存し、新しいコメントのリストで新しいPartialViewを返す。

コメントを追加した特定の製品のコメントのみを更新したいと考えています。

私はこれをJavaScriptに割り当ててボタンに割り当てます。

$(".clsTest").unbind("click").click(function(evt) { 

しかし、これはボタンの最初のインスタンスにのみ貼り付けられ、すべてではありません。

私はここで知識の重要な要素が欠けていると感じています。私はこの質問を正しく聞いているかどうかもわかりません。

答えて

0

私はjQueryの忍者ではありませんが、あなたはjQueryの 'ee'メソッドを見る必要があると思います。

たぶん、このような何か(?):

$(".clsTest").each(
    function() { 
     $(this).unbind("click").click(function(evt) { 
      //do your stuff... 
     }); 
    } 
); 

HTHS
チャールズあなたがそのためにjQuery liveを使用していないのはなぜ

+1

これを行う必要はありません。バインド解除は、すべての一致した要素で機能します。 docsを確認してください:http://docs.jquery.com/Events/unbind – RaYell

+0

ええ、それはちょうど質問からコピー&ペーストのコードでした。 – Charlino

2

。セレクタに一致する新しい要素を追加するたびに、jQueryがそれを行うため、イベントハンドラを追加する必要はありません。

$('.clsTest').live('click', function() { 
    ... 
}); 
+0

+1を試してみましたが、私はこの問題を過去に説明したと思います。シャーリーノは私をもう少し近づけたが、別の質問をした。 – griegs

関連する問題