我有一个选择标记(#dd01
)并希望通过点击按钮来更改其值
<select id="dd01">
<option value="01">sky</option>
<option value="02">sea</option>
<option value="03">earth</option>
<option value="04">win</option>
</select>
js.click
var dd = $("#dd01").children().eq(index01).html();
alert (dd); // works fine - for example `sky`
$("#dd01").val(dd); // doesn't work - select tag is empty
答案 0 :(得分:2)
试试这个:
var dd = $("#dd01").children().eq(index01).val();
alert (dd); // works fine - for example `sky`
$("#dd01").val(dd);
$("#dd01")
必须有值,而不是文字。所以我使用eq(index01).val()
代替eq(index01).text()
。
答案 1 :(得分:1)
您正在从该选项中获取文本,并尝试将其用作值。
选项sky
的值为01
,因此调用.val('01')
会选择该项,但不会调用.val('sky')
。
您可以使用attr
方法获取选项的值:
var dd = $("#dd01").children().eq(index01).attr('value');