在select by属性值中查找所有匹配选项

时间:2014-09-13 23:48:41

标签: javascript jquery

我有一个带有几个选项的HTML选择控件。每个选项都有一个名为' linkid'的属性。例如,

"<option linkid = '100' title = 'some title 1' value='1'>some value 1</option>"
"<option linkid = '100' title = 'some title 2' value='2'>some value 2</option>"

现在,我需要按属性&#39; linkid&#39;。

找到所有匹配的选项

我尝试了以下代码但它没有用...

var matchingOptions = myselectcontrol.find('[linkid==100]');

var matchingOptions = myselectcontrol.find(':100');

上述代码导致语法错误。我究竟做错了什么?有没有办法按属性值查找匹配选项?

谢谢, VIM

1 个答案:

答案 0 :(得分:0)

你非常接近,试试:

var matchingOptions = myselectcontrol.find('[linkid=100]');

虽然值得添加自定义属性,但在HTML 4.x下无效;在HTML 5下,有({有效)data-*属性来保存自定义数据,这些数据在HTML 4.x下仍然无效(尽管仍然有效),但会在HTML 5下验证。

如果您认为值得做出改变,您的代码将成为:

<option data-linkid = '100' title = 'some title 1' value='1'>some value 1</option>

var matchingOptions = myselectcontrol.find('[data-linkid=100]');

参考文献: