2017-08-06 61 views
1

HTML:無法獲得選擇期權的價值爲jQuery的發佈

<select id="s2_basic" class="form-control" id="userid" name="userid"> 
    <option value="" selected>-- Choose option --</option> 
    <option value="1">One</option> 
    <option value="2">Two</option> 
    <option value="3">Three</option> 
</select> 

的Javascript:

function submitForm() { 
    var userid = $('#userid').attr('selected', 'selected'); 

    $.ajax({ 
     type: "POST", 
     url: "submit.php", 
     data: "userid=" + userid, 
     success: function(text) { 
      if (text == "success") { 
       formSuccess(); 
      } else { 
       formError(); 
       submitMSG(false,text); 
      } 
     } 
    }); 
} 

提交PHP返回錯誤信息:

Value: ([object Object]) 

我也曾嘗試

var userid = $('#userid').val(); 
var userid = $('#userid option').val(); 

不過,選項值永遠不會正確傳遞。 我在做什麼錯?

我只想將value =「x」數字發佈爲userid = x。

+0

爲什麼你有兩個ID中有你的選擇? id =「s2_basic」和id =「userid」? – yoeunes

回答

2

從您的選擇中刪除id="s2_basic"

變化:

<select id="s2_basic" class="form-control" id="userid" name="userid"> 

<select class="form-control" id="userid" name="userid"> 
+0

謝謝。我無法相信我沒有注意到這一點。 – Fid

+0

歡迎@Fid,希望它有所幫助 – yoeunes

0

$('#userid').on('change',function(){ 
 

 
console.log('value '+$('#userid option:selected').val()) 
 
console.log('text '+$('#userid option:selected').text()) 
 
console.log('index '+$('#userid option:selected').index()) 
 

 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> 
 
<select class="form-control" id="userid" name="userid"> 
 
    <option value="" selected>-- Choose option --</option> 
 
    <option value="1">One</option> 
 
    <option value="2">Two</option> 
 
    <option value="3">Three</option> 
 
</select>

試試這個