jQuery的屬性與樣式之.val()問題
.val()方法
.val()無參數,獲取匹配的元素集合中第一個元素的當前值
.val( value ),設置匹配的元素集合中每個元素的值
.val( function ) ,一個用來返回設置值的函數
?注意事項:
通過.val()處理select元素, 當沒有選擇項被選中,它返回null
.val()方法多用來設置表單的字段的值
如果select元素有multiple(多選)屬性,并且至少一個選擇項被選中, .val()方法返回一個數組,這個數組包含每個選中選擇項的值
方法第一條跟注意事項的第一條不矛盾嗎?
<select id="single">
??????? <option>慕課網</option>
??????? <option>博客園</option>
</select>
<select id="multiple" multiple="multiple">
??????? <option>imocc</option>
??????? <option>慕課網</option>
??????? <option>博客園</option>
??? </select>
<p></p>
<p></p>
?$("p:first").text( $("#single").val() )獲取到的值是“慕課網”而不是null
?$("p:last").text( $("#multiple").val() )獲取到的值是null
是不是應該這樣認為:當通過.val()處理的select元素有multiple多選這一項時,如果沒有選項被選中則返回null;當通過.val()處理的select元素沒有multiple多選這一項時,如果沒有選項被選中則返回第一個option的值;
2017-07-27
喔喔喔
2017-05-08
不會矛盾,主要是因為有multiple這個屬性,不存在矛盾的
2017-05-04
是的 ?沒錯 因為下拉框默認選中第一個option的值