1

OnClickASP.NET ページで目次を生成しており、クライアント側のアクションを各セルに追加したいと考えています(アクションは、名前付き TextBox コントロールの値を、クリックしたセルのテキストに設定する必要があります)。HTML 出力に何かを直接追加できれば、各セルに 1 行の JavaScript を追加するだけでこれを実行できると思います。

私は現在JQueryを使用していない(そして以前は使用したことがない)ことを考えると、これを追加するための最も簡単な解決策は何ですか(学習に費やされた時間を含む)?


編集:これはうまくいくようです

4

4 に答える 4

2

HtmlControls を使用してプログラムでテーブルを作成している場合は、HtmlTableCell の onclick クライアント属性を設定できます。

HtmlTableCell cell = new HtmlTableCell();
cell.Attributes.Add("onclick", "someFunction();");

ただし、jQuery を使用している場合は、次のようなことができます。

$('td').click(function(){ // Select all the table cells on the document.
  $(this).html($('#textboxId').val()); // When clicked, change the innerHTML
});                                    // with a textbox value.
于 2009-07-24T18:14:58.730 に答える
1

それは、その目次をどのように生成しているかによって異なります。

  1. テーブルコントロールを使用してバルドアップする場合は、 Attributes.Add()メソッドを使用してJavaScriptをTableCellコントロールに追加できます。

  2. GridViewを使用して構築する場合は、 RowDataBoundイベントが発生したときにJavaScriptを追加できます

于 2009-07-24T18:21:24.113 に答える
1

各セルに css クラスを指定する必要があります... class="contentsCell"

次に、次のスクリプトを head タグに追加できます (jquery インクルードと共に)

$(document).ready(function(){

$(".contentsCell").click(function(){
    CallYourFunction();
})

}))

CallYourFunction() はあなた自身の関数です...

これは基本的に

onclick="CallYourFunction();"

クラス「contentsCell」を持つ各tdセル(またはその他の要素)

また、セル内のテキストを取得する場合は、次のようにします。

$(document).ready(function(){

$(".contentsCell").click(function(){
    var mytext = $(this).text();
    CallYourFunction(mytext);
});

});

jquery の優れたリファレンスについては、visualjquery.com をご覧ください。

于 2009-07-24T18:15:56.230 に答える
0

さて、あなたの質問は理解するのが難しいですが、私はあなたにいくつかの指針を与えます.

各コントロールには ClientID プロパティがあります。これは、JavaScript に挿入して、コントロールのクライアント側 ID を知るのに役立ちます。

テキストをテキスト ボックスに入れるための jQuery 構文は、次のようになります。

$("#" + clientId).attr("value", theValue);

セルからテキストを取得するための jQuery 構文は次のようになります。

$("#" + cellId).html()
于 2009-07-24T18:15:18.667 に答える