【发布时间】:2015-03-26 07:07:54
【问题描述】:
<div>
<fieldset id='dynamicTargetId'>
<legend>test</legend>
</fieldset>
</div>
使用 jQuery 获取包含单词 Target 的字段集的最佳方法是什么。 Id 将是一个始终包含单词 Target 的组合。
【问题讨论】:
标签: javascript jquery
<div>
<fieldset id='dynamicTargetId'>
<legend>test</legend>
</fieldset>
</div>
使用 jQuery 获取包含单词 Target 的字段集的最佳方法是什么。 Id 将是一个始终包含单词 Target 的组合。
【问题讨论】:
标签: javascript jquery
您可以使用 CSS 属性选择器:
$("fieldset[id*=Target]")
一般来说,[att*=str] 匹配任何包含 str 的属性值。
这是一个例子:
var test = $('fieldset[id*=Target]');
$('#count').text(test.length);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
<fieldset id='dynamicTargetId'>
<legend>test</legend>
</fieldset>
<fieldset id='anotherTargetId'>
<legend>test</legend>
</fieldset>
<fieldset id='TargetId'>
<legend>test</legend>
</fieldset>
</div>
<p>
Found <span id="count"></span> fieldset elements containing 'Target'
</p>
如果您需要匹配在某个位置(开始或结束)包含值的属性,您可以使用类似:
[att^=str] // attribute value starting with str
[att$=str] // attribute value ends with str
【讨论】:
在id 属性上使用attribute contains selector。例如:
$("fieldset[id*='Target']");
【讨论】: