如何更改选项(select)的'value'属性中的文本?

时间:2014-05-01 09:35:01

标签: jquery html

<select id="selectnav1" class="selectnav">
<option value="">- Navigation -</option>
<option selected="" value="javascript:void">Category 1</option>
<option value="javascript:void">Airbrush tanning</option>
<option value="javascript:void">Category 3</option>
<option value="javascript:void">Category 4</option>
<option value="javascript:void">Category 5</option>
<option value="javascript:void">Category 6</option>
</select>

我想用option元素中的主文本替换/设置value属性中的文本。示例:对于第一个选项,即categeory 1,我想将javascript:void更改为“category 1”,同样适用于所有其他选项。

jsbin

4 个答案:

答案 0 :(得分:5)

你可以这样做:

$('#selectnav1 > option:gt(0)').val(function(){
    return $(this).text();
});

gt选择器意味着大于索引。

答案 1 :(得分:1)

您可以尝试这种方式,您可以跳过任何选项值

$('#selectnav1 > option').each(function(i, o){
    if(i > 0)
      o.value = o.text;
});

答案 2 :(得分:0)

这应该有效

$('#selectnav1 > option').val(function(){
    $(this).val($(this).html());
});

答案 3 :(得分:0)

            $('#selectnav1 option').each(function() {

            $(this).val($(this).text());
        });