我有以下设置
HTML:
<div class="prod-inner">
<div class="number-wrapper">
<input type="text" name="updates[]" id="testID" value="1" >
</div>
</div>
JQuery的:
$('.number-wrapper input[id=testID]').closest('prod-inner');
希望像这样返回实际的div:
<div class="prod-inner">
<div class="number-wrapper">
<input type="text" name="updates[]" id="testID" value="1" >
</div>
</div>
但是它返回了这个:
init [div.prod-inner, prevObject: init(1), context: document, selector: ".number-wrapper input[id=updates_36213941315].closest(.prod-inner)"]
答案 0 :(得分:0)
您需要使用最近的类来选择元素。它不会自动返回为类,因为jquery不会知道它是最接近的类还是id或其他元素对象:
$('.number-wrapper input[id="testID"]').closest('.prod-inner');
// wrap with double quotes ^^ | class selector ^.
此外,您可以直接使用ID,因为它是唯一的:
$('#testID').closest('.prod-inner');
如果您生成了动态ID,我可以看到id=updates_36213941315
,那么您可以使用attribute contains selector:
$('[id*="36213941315"]').closest('.prod-inner');
$('[id^="updates_"]').closest('.prod-inner');