Javascript jQuery:使用";。每一个;对于select';按美元计算的s选项(此)

Javascript jQuery:使用";。每一个;对于select';按美元计算的s选项(此),javascript,jquery,html,Javascript,Jquery,Html,我知道有很多类似的问题,但我仍然找不到一个关于我的确切问题。我没有我的的选择器;我正在迭代表单字段,因此我只能使用$(this)访问我的select 如何通过使用jQuery“s”函数迭代此选择的选项 我试着把它锁起来,但这不起作用: $(this).$('option').each(function(){ if (this.value == val) { // do something } }); 注意:$(此)是我的选择不是我的表单尝试以下操作:您可以使用.find

我知道有很多类似的问题,但我仍然找不到一个关于我的确切问题。我没有我的
选择器
;我正在迭代表单字段,因此我只能使用
$(this)
访问我的
select

如何通过使用
jQuery
“s”函数迭代此
选择
的选项

我试着把它锁起来,但这不起作用:

$(this).$('option').each(function(){
    if (this.value == val) {
    // do something
    }
});

注意:
$(此)
是我的
选择
不是我的
表单
尝试以下操作:您可以使用
.find()
在选择下获取
选项

注:-
此值
指循环内的当前选项值

$(this).find('option').each(function(){
    if (this.value == val) {
    // do something
    }
});

由于您的
是对
选择
元素的引用,因此您还可以访问其
选项
属性,您可以将该属性包装在
jQuery
对象中:

$( this.options ).each( function(i, option){
    if (this.value == val) {
    // do something
    }
});

tyvm,这似乎有效。我知道一定有一个简单的方法,只是我自己找不到:)但我也喜欢pawel的答案,因为它根本不需要使用
find()
——很难决定接受哪个答案。是的,这个方法很好,他使用
$使用attribute来获取
选项
(this.options)
其中
这个
指的是
选择
。这也是一个完全正确的答案,我想再添加一种方法:
$('option',this)。each()
,它利用了jQuery的第二个参数是执行搜索的上下文这一事实。哇,这也是一个很好的解决方案。所以我假设
this.options
是本机javascript?因为这个答案不需要jQuery的代码>查找()(代码)>函数,我猜它应该执行得更好,或者我错了吗?它可能稍微快一些,可能是纳秒级的,所以不要认为它是优化的,但是,是的,代码> > select。选项< /代码>是访问选择元素的选项列表的本机方式。我为Bhushan Kawadkar感到抱歉,但我更喜欢你的回答。它使用非常简单的本机javascript,这让我学到了一些新东西。关于:
$(this.find('option:selected')。doSomething().orwhich()。你最好解释一下你在找什么
$( this.options ).each( function(i, option){
    if (this.value == val) {
    // do something
    }
});