2016-02-25 57 views
1

我已經嘗試了兩種方式來獲得選項選擇的值兩種方式來獲得選項選擇的值

  1. $(".card-vaild-month option:selected").val()

  2. $(".card-vaild-month option:selected").text()

,並且由JavaScript生成我的選擇, 當我使用方法#1不能正常獲得價值,但#2可以正常獲得價值。

然而,如果沒有由JavaScript生成我的選項(在HTML直接寫) 這兩種方法都是可行的

的是這兩種方法的區別?

在此先感謝

+0

您可以包括用於添加當您使用選項javascipt的JavaScript的。 –

回答

1

$(".card-vaild-month option:selected").val()回報<option value=<THISVALUE>value屬性提及作爲值被選擇當然

和一個小例子

$(".card-vaild-month option:selected").text()返回標籤中提到<option>THISVALUE</option>

文字請查看以下的差異片段

document.write("<br>val()="+$(".card-vaild-month option:selected").val()); 
 

 

 
document.write("<br>text()="+$(".card-vaild-month option:selected").text());
<script src="//code.jquery.com/jquery-1.12.0.min.js"></script> 
 
<select class="card-vaild-month"> 
 
    <option value="0">zero</option> 
 
    <option value="1" selected>one</option> 
 
    <option value="2">two</option> 
 
</select>

+0

我混淆使用,謝謝你的解釋 – cihm

2

您應該得到選擇菜單的值,而不是選項。在你區分

$('.card-valid-month').val(); 

我加入下面

alert($('.input-select').val()); 
 

 
$('.input-select').on('change',function(){ 
 
\t alert($(this).val()); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<select class="input-select"> 
 
    <option value="0">0</option> 
 
    <option value="1">1</option> 
 
    <option value="2">2</option> 
 
</select>