2

私はjqueryとasp.netの初心者です。次のコーディングを使用して値を取得しています。$(#textbox1)[0].value の [0] が使用されるのはなぜですか? 値を取得する別の方法はありますか?

$.ajax({
                     type: "POST",
                     url: "Default.aspx/GetTextData",
                     data: "{}",
                     contentType: "application/json",
                     dataType: "json",
                     success: function(msg) {
                       $("#txtResult")[0].value = msg.d;
                     }
                 });

どうもありがとう

4

2 に答える 2

2

コードのコンテキストでは、実際に値を取得するのではなく、設定しています:

$("#txtResult")[0].value = msg.d

(私のコメントによると)の代替のjQuery構文を使用できます:

$('#txtResult').val(msg.d)

そのコードの作成者は、その jQuery オブジェクトからネイティブを取得するために使用されるように、入力[0]の標準に値を割り当てたいため、使用する必要があります。または、次を使用できます。DOMElement[0]DOMElement

$('#txtResult').get(0).value = msg.d

前の方法はまだ好ましいですが

于 2012-05-07T06:15:55.493 に答える
0

$("#txtResult").val(msg.d)それはjQuery関数であるため、代わりに使用することをお勧めします。

[0] を使用する理由は、jQuery 要素ではなく DOM 要素にアクセスするためです (たとえば、jQuery 関数である$("#txtResult")[0].val(msg.d)ため実行できません)。.val

$("#txtResult").val(-something-)実際に値を設定します(質問に書いたように取得するのではありません)。

$("#txtResult").val()要素から値を取得するために使用されるコマンドです。

于 2012-05-07T06:21:28.983 に答える