如何从jQuery的select选项中获取属性?

8 javascript jquery select option web

我有HTML中的下一个选择:

<select id="listbox-taskStatus" class="selectpicker">
    <option status="0">In progress</option>
    <option status="1">Not started</option>
    <option status="2">Done</option>
    <option status="3">Failed</option>
</select>
Run Code Online (Sandbox Code Playgroud)

我想从所选选项中读取属性值.

如果只是为了获取价值,那很简单:

var value = $('#listbox-taskStatus').val();
Run Code Online (Sandbox Code Playgroud)

但是,如果我想从所选选项中获取属性值,我该怎么办?我知道,.attr()必须有所帮助,但是当我尝试使用它时,我的结果不正确.

我试过下一个:

var status = $('#listbox-taskStatus option').attr('status');
Run Code Online (Sandbox Code Playgroud)

但返回的值总是0尽管事实上我选择了不同的选项.

怎么了,怎么解决我的问题?

Sat*_*pal 33

使用:选择选择器

var status = $('#listbox-taskStatus option:selected').attr('status');
Run Code Online (Sandbox Code Playgroud)

但是,我建议你使用data-prefixed属性.然后你可以使用.data()

var status = $('#listbox-taskStatus option:selected').data('status');
Run Code Online (Sandbox Code Playgroud)

DEMO