我有以下代码
<select id="part">
<option>noun</option>
<option>verb</option>
<option>adjective</option>
</select>
在上面的代码中,我没有每个选项标签的任何值属性。只有文本节点。
当我访问选项标签时,
$("#part").val();
我得到下拉框中选择的内容。即,“名词”,但是当我访问时$("#part").text()
,有空字符串。
但是当我创建时,选项标签在 jquery 中动态地为
<select id="part"></select>
使用
var names=["noun","adjective","verb"];
for (var i =0;i<names.length;i++) {
var option=$("<option>",{
value:names[i],
text:names[i]});
$("#part").append(option);
}
这里需要 value 属性来选择选项。没有 value 属性, $("#part") 是未定义的。
有人可以解释这里的差异吗?如果我的理解不正确。谢谢