我在html中有这个结构:
<ul id="resultlist">
<li>
<input type="hidden" value="idNumber" />
<dl>
...
</dl>
</li>
</ul>
在jquery中是否存在基于孩子找到<li>
的单行方法?
目前我在我的代码中有这个找到<li>
,但它很长:
//dynamic value
var idNumber = 2;
//finds input with value of 2
var hiddenInput = $('#resultList').find('input[value='+idNumber+']');
var listItem = hiddenInput.parent();
答案 0 :(得分:3)
如果你想要一个单行,只需链接电话。
var listItem = $('#resultList input[value="'+idNumber+'"]').parent();
我还将input
选择器放入初始选择器中以稍微缩短它,并且还在属性值周围包含了缺少的引号。
如果你真的想要它,你可以使用非标准:has()
选择器......
var listItem = $('#resultList li:has(input[value="'+idNumber+'"])');