0

グリッドビューで定義されている隠しフィールドの値をjavascript関数に取得することは可能ですか?リンクされたボタンが定義されているグリッドビューがあります. ユーザーがリンク ボタンをクリックすると、javascript 関数が呼び出されます。javascript 関数で非表示のフィールド値が必要です。

また、1 つの非表示フィールドに複数の値を渡してから、後で JavaScript 関数でそれらを分割できるかどうか疑問に思っていました。

どんな助けでも大歓迎です。コードビハインドに行き、そこからjavascript関数を呼び出したくありません。

4

2 に答える 2

1

最初のタスクは、非表示フィールドの「適切なセレクター」を決定することです。これは、control.ClientID個々の非表示フィールドのID(get via)、または「特定のdiv内のすべての非表示フィールド(特定のID)」などのより一般的なセレクターにすることができます。 "。この情報を実際のHTML応答に入れるために<%= .. %>(またはデータバインディングコンテキストで)使用します。<%@ .. %>

正確なアプローチは、タスクによって異なります(基本的に、最も簡単な方)。

次に、お気に入りのライブラリまたは適切なセレクターサポートを備えた高度なブラウザー(適切なライブラリーを見つけるのが簡単です)1を使用して、指定されたセレクターを使用します。jQueryでは、これは次のようになります。ここで、fnはすべての値を処理する関数です。実際のセレクターは引用符で囲まれたものです。

fn(jQuery("#clientIdOfGridView input[type='hidden']"))

これはASP.NETで記述される可能性があり、適切な要素IDが挿入される方法です。

fn(jQuery("#<%= gridView.ClientID %> input[type='hidden']"))

これらは両方とも、非表示フィールド要素を表すjQueryオブジェクトを関数に渡します。 次に、および/または(jQueryのドキュメントおよびその他のSOの質問を参照)を使用します。val()each()

jQueryと「値の選択」だけに関連する多くの質問があるので、これは完全な「答え」であり、実際に開始方法の手がかりを提供することです-ハッピーコーディング:)


1これは、IDとDOMトラバーサルによって要素を見つける「昔ながらの」方法で手動で行うことができますが、そのようなタスクを手動で行うのは時間の無駄だと思います。私はjQueryが好きですが、別の方法があります。既存のホイールを使用します。彼らは比較的速く転がります。

于 2012-11-05T19:20:59.573 に答える
0

非表示フィールドの1つのvalue属性に必要な数の値を指定できます。関数で使用できる「、」、「#」などの区切り文字を使用して、必要に応じて値の文字列を分割する必要があります。

于 2012-11-05T19:14:20.110 に答える