0

"メールを送信している"小さなアプリケーションMVCに取り組んでいます。最初はドロップダウンを使用して1人のレシーバーを選択しましたが、その後はドロップダウンリストに複数のクラスを追加しました。私は1つの受信機のみで使用し、このコードをデバッグしようとした:私はreceiverIdを格納するために使用var Receiverは、acctually配列になることに気づいどうやってjavascriptは私のコントロールが配列を保持していることを認識していますか?

$("#SubmitEmail").click(function() { 
    var Receiver = $('#ReceiverID').val(); 
    var Subject = $('#subject').val(); 
    var Body = $('#content').val(); 
    var obj = { 'Receiver': Receiver, 'Subject': Subject, 'Body': Body }; 

    SendEmail(obj); 
}); 

を、そして私が洙ので、それをcooooool適応JavaScriptを来るどのように思ったんだけど私はそこにいくつかの項目を選択したことを認識し、それは配列になるので、私は単にそれをループしました(自分のコードを変更しました):

すべてがcoooolだったので、私は単にjsがそれをどのように知っているのだろうと思っていますか?

答えて

1

コレクション内の最初の要素がセレクト倍数である(すなわち、 複数属性セットと要素を選択)、.val()を返します アレイは、選択された各オプションの値を含みます。

実際にはjQueryの魔法であり、JavaScriptの魔法ではありません。

val()hereの実際のソースコードが表示されます。 select要素のget hookを呼び出す関数です。実際には選択されたオプションをループします。

+0

そのような要素が1つしかない場合は、要素自体よりも配列を返さない場合はありますか? –

+0

@ Roxy'Proいいえ、1つの要素だけの配列を返します。あなた自身を参照してください:https://jsfiddle.net/pyko71fz/ –

0

Javascriptは状態に応じてクールですが、この例では実際にはJquery実装の柔軟性があり、ドロップダウン用のオブジェクトの配列を返します。詳細はhttp://api.jquery.com/val/を参照してください。

0

これはjQueryの動作方法です。この例で

http://api.jquery.com/val/

スクロールダウン:.val()関数を参照

セレクト複数から選択単一及び値の配列から単一の値を取得し、その値を表示します。 jQuery docs on val()から

関連する問題