我陷入了需要在jQuery 中使用部分 id 找到完整 id 的情况。假设我有以下 HTML 元素
<div id="Partial_Known_Id">
<span>
</span>
</div>
Run Code Online (Sandbox Code Playgroud)
如何使用部分 id 获取上述元素的完整 id?
假设我知道它以Partial_开头。我在下面试过
var b = $('[id*="Partial_"]');
Run Code Online (Sandbox Code Playgroud)
但它似乎不起作用。
无论如何,我可以在某个变量中获得完整的 id ?
如果你想知道他们所有的ids,你需要一个循环,例如:
var b = $('[id*="Partial_"]');
b.each(function() {
console.log(this.id);
});
Run Code Online (Sandbox Code Playgroud)
该循环可以在您的代码中(如上),也可以在 jQuery 的代码中:
var ids = $('[id*="Partial_"]').map(function() { return this.id; }).get();
Run Code Online (Sandbox Code Playgroud)
后者为您提供了一个匹配ids的数组。
需要注意的是,如果你知道在id 与开始“Partial_”,你可以使用^=,而不是*=。*=将匹配任何地方的字符串;^=只会在id.
each和 的实例map:
var b = $('[id*="Partial_"]');
b.each(function() {
console.log(this.id);
});
Run Code Online (Sandbox Code Playgroud)
var ids = $('[id*="Partial_"]').map(function() { return this.id; }).get();
Run Code Online (Sandbox Code Playgroud)