jQuery在使用$(this)时获取选择选项

时间:2013-05-20 23:59:39

标签: jquery html

我希望能够在选择下拉框中循环并记录每个选项。我不确定在使用$(this)时如何执行此操作。

这就是我所拥有的。

$('select').each(function(){
    $(this).find('options').each(function(){
        var boxOpt = $(this).text();
        console.log(boxOpt);
    });
});

它目前没有任何输出。我希望能够做到这样的事情: $(this + ' options').each(function(){...});但这也不起作用。

我试过了 $(this).find()$(this).children()以及其他一些变体,但我不知道该怎么做。

有什么建议吗? 谢谢

2 个答案:

答案 0 :(得分:4)

options应为option。您只需将其添加到选择器字符串:

$('select option').each(function(){
    var boxOpt = $(this).text();

    console.log(boxOpt);
});

答案 1 :(得分:2)

以下是Vanilla JS

中的操作方法
var tags = document.getElementsByTagName('select'), l = tags.length, i, opts, m, j;
for(i=0; i<l; i++) {
    opts = tags[i].options;
    m = opts.length;
    for( j=0; j<m; j++) {
        console.log(opts[j].text);
    }
}
相关问题