2017-05-05 14 views
0

自己教示Node.jsとJavascriptのもの。私は自分のHTMLと選択、ドロップダウンメニューオプションのフォームにあります。選択した値のインデックスを取得するにはどうすればよいですか?これをしようとJavascript/Node.jsで選択されたオプションを取得する

これまでのところ、イム:

var e = req.body.boolean_choice; 
boolChoice = e.selectedIndex; 

私はreq.bodyは、テキストボックスに入力した値を取得するために働いていますが、それはselectedIndexがものではありませんと言われます。それでは私が試した:

var e = req.body.boolean_choice 

それは与え、それだけでundefinedを与えたかを確認します。

これを行う方法はありますか?ここで

はHTMLです:

<form action="http://localhost:3000" method="POST"> 
Form:<br> 
<br> 
<br> 
Text Box 1: <input type="text" name="tb1" size="35" placeholder="&quot;@10SadioMane&quot; OR &quot;#Mane&quot;"> 
<br> 
<br> 
<select id="choice" name="choice"> 
    <option value="OR">OR</option> 
    <option value="AND">AND</option> 
</select> 
<br> 
<br> 
<input type="submit" value="Submit"> 

+1

あなたのHTMLを表示できますか? –

+0

[{"" id ":1、" name ":" test "}、...]のようなインデックスと値を持つオブジェクトの配列として選択オプションの値を使用し、select関数呼び出しではなく名前を送信します。 –

+0

多分この古い質問は助けになるかもしれません:[http://stackoverflow.com/questions/1085801/get-selected-value-in-dropdown-list-using-javascript](http://stackoverflow.com/questions/1085801/)ドロップダウンリストを使用する - javascriptを使用する) – user1799565

答えて

3

フォーム提出は選択の唯一のvalueプロパティを渡します。 IDEのデバッガを使用して、そこにあるものを推測するのではなく、req.bodyを探索してください。

+1

または 'console.log(req.body)'をコンソール実行ノード – George

+0

で表示するにはどうすればいいですか?私は 'req.body.tb1'を使ってそのテキストボックスの入力を返します。だから、私はこの論理が同じであると仮定しました。 –

0

お寄せいただきありがとうございます。すべて選択されたオプションのDOM要素を取得

var el = document.querySelector('#choice option:selected'); 

まずイブンあなたの場合、それは req.body.querySelector( '#選択オプション:選択した')になります。

ロジックは、チェーンの前の兄弟に反復して、上に到達するまで行います。

var index = 0; 
while(el.previousSibling ! == null){ 
el = el.previousSibling; 
index +=1; 
} 
console.log(index); 
+0

彼は 'req.body'を使っているので、私は彼がサーバ側でインデックスを必要とすると思います。 –

関連する問題