1

私の aspx マークアップでは、次のように定義しています。

<asp:HiddenField runat="server" ClientIDMode="Static" ID="hidField" />

次のようなC#コードがあり、隠しフィールドに値を与えます:

hidField.value = check().ToString();

簡単にするために、check は true を返す関数であると仮定します。

次のことを行うJSコードを作成しました。

_myBool = $("#hidField");
alert(_myBool.value);

これは undefined を警告します。

デバッグの目的で、C# で hidField.value が実際に true であることを確認しました。そして、1 を返した _myBool.length と [Object object] を返した _myBool を警告しようとしたので、未定義で未定義を呼び出していません。

4

4 に答える 4

2

ドル記号を忘れて、val() 関数も使用している

alert($("#hidField").val());
于 2012-11-12T21:49:02.197 に答える
2

$記号がありません..

var  _myBool = $("#hidField");

alert(_myBool[0].value); // DOM Object 

alert(_myBool.val() );  // jQuery Object 

また、セレクターrunat="server"はコンテンツのプレースホルダーを前に追加するため、属性では機能しない可能性があることに注意してください。

これはより良いセレクターです

 var _myBool = $('[id*="hidField"]');
于 2012-11-12T21:47:24.853 に答える
2

これを試して

_myBool = $("#hidField");  //my bool is a jQuery Object
alert(_myBool.val());   //can only get value with .val()

また

_myBool = $("#hidField")[0];  //[0] gets the element in the object
alert(_myBool.value);  //can use the javascript .value
于 2012-11-12T21:48:12.940 に答える
0

正しい ID を使用していることを確認してください。

_myBool = $("#<%= hidField.ClientID %>").val();

ページが読み込まれたときにソースを表示し、そのフィールドを確認します。ID が「hidField」ではない可能性があります。上記のコードは正しいでしょう。

于 2012-11-12T22:15:16.500 に答える