2016-12-11 14 views
1

質問で述べたように、私はドロップダウンリストでアクティブな要素を取るのに苦労しています。javascriptを使用してアクティブな要素をドロップダウンリストから取得する問題

これは私のコードです:

saveButton.onclick = function btnSubmitOnClick(e) { 
    console.log('saveBtn clicked'); 
    var user = { 
    username: username.innerHTML, 
    mood: mood.value, 
    status: strUser 
    }; 
    var r = new XMLHttpRequest(); 
    r.open('POST', '/profile'); 
    r.setRequestHeader('Content-Type', 'application/json'); 
    r.setRequestHeader('Accept', 'application/json'); 
    console.log(user); 
    r.send(JSON.stringify(user)); 
}; 

だから、私はそれを実行すると、リクエストが送信された後、私が受け取るすべてはどんなI、ドロップダウンメニューのステータスと空の文字列のユーザー名ではありません選択された。私が取得するように右の値であり、そして、

var e = document.getElementById("statusSelect"); 
var strUser = e.options[e.selectedIndex].value; 
strUser; 

:私はドロップダウンでアクティブなオプションを選択して、(例えば、この)ブラウザコンソールにそれを置くために使用するコードを取る場合 しかし、

<div class="row"> 
     <div class="input-field col s12"> 
      <select id="statusSelect"> 
      <option value="" disabled selected>{user.status}</option> 
      <option value="online">online</option> 
      <option value="ready to draw">ready to draw</option> 
      <option value="away">away</option> 
      <option value="busy">busy</option> 
      <option value="offline">offline</option> 
      </select> 
      <label>Status:</label> 
     </div> 
</div> 

答えて

0
(私は私もそれには問題がないと思います)あなたがそれを見てみたかった場合には、これはメニューのHTMLコードです :

アップデートなど、「描画する準備ができて」「オンライン」

解決:

私は私が提出したときに、私はドロップダウンメニューで選択の現在の値をとるようにするためのボタンのコード

var e = document.getElementById("statusSelect"); 
var strUser = e.options[e.selectedIndex].value; 

にこれらの2つの変数を移動しなければなりませんでした。 前回と同じように、変数を外(グローバル)にしておけば、メニューには選択されていない初期値が得られます。

関連する問題