我想这样访问select选项jQuery对象:
var $options = $('select').children();
var $someOption = $('[value="some_value"]', $options);
var $anotherOption = $('[value="another_value"]', $options);
但$someOption
或$anotherOption
看起来都不像$('select')
中的任何元素。
我相信我知道如何编写一行选择器,但由于我正在访问各种选项,因此我想使用$options
句柄来提高可读性和性能。
代码和/或原理有什么问题?
答案 0 :(得分:5)
您必须使用jQuery的filter
方法:
var $options = $('select').children();
var $someOption = $options.filter('[value="some_value"]');
var $anotherOption = $options.filter('[value="another_value"]');
答案 1 :(得分:1)
要使用context参数,请不要调用.children()
。
var $select = $('select');
var $someOption = $('[value="some_value"]', $select);
var $anotherOption = $('[value="another_value"]', $select);