2011-12-29 10 views
-1

をItemCommandにあるボタンをクリックしたときでありますリピータはラベルパラメータをjquery関数に送り、それを実行します。私のJqueryコードは以下の通りです。今エラーが発生します。 imgBtnCopyはリピータ内にあるので、imgBtnCopyという名前のボタンはないと言います。だから、どのように私は、リピータ実行jQueryのコードは、私はjqueryのコードを持っていると私は私のリピータでは、私のリピータ内のすべての項目について</p> <p>をこのコードを実行する必要が私は私が何をしたいボタンやラベル を持っている

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#' + '<%= imgBtnCopy.ClientID %>').zclip({ 
      path: 'ZeroClipboard.swf', 
      copy: function() { 
       return $('#' + '<%= lblFile.ClientID %>').val(); 
      }, 
      afterCopy: function() { 

      } 
     }); 

    }); 

</script> 

答えて

1

ItemCommandのitemcommandにこのコードを実行することができRepeaterオブジェクトのサーバー側のイベントです。 JQueryはクライアントサイドのコードなので、ここでは少し不一致があります。

また、レンダリングされたHTMLのソースを表示すると、エラーメッセージが正しいことがわかります。 idがのオブジェクトはありませんimgBtnCopyは、のimgBtnCopyとなります。の部分のidです。 ASP.NETフレームワークは、<ItemTemplate>の各コントロールに一意のIDを割り当てます。そうしないと、同じIDの複数のコントロールになります。良いことではありません。言われて、あなたは上記の情報に考慮するためにあなたのアプローチをシフトする必要があること

次のようにjQueryのセレクタを使用して、自分のIDの一部としてimgBtnCopyが含まれているすべてのコントロールを選択するには:あなたは、文字列が含まれているIDを持つすべての要素を選択し

[id*=imgBtnCopy] 

その方法imgBtnCopy。 * =はcontainsのJQuery演算子です。次に、これらの各ボタンのクリックイベントにJQueryを接続します。

関連する問題