每个页面的jQuery选择器都不同

时间:2016-03-27 19:50:56

标签: javascript jquery

我已经构建了一个脚本,可以在点击另一个元素时触发点击事件。例如,用户可以单击元素A,脚本会触发元素B上的单击。

我的问题是,我使用的选择器只针对一个页面,因为它们在它们的末尾包含唯一的ID,例如,在一个页面上我可能有选择器-123而在另一个页面上它可能是选择器-456。

这是实际的选择器

$('#accordion-section-sidebar-widgets-obox-layers-builder-4 > h3:nth-child(1)').trigger('click');

问题是#accordion-section-sidebar-widgets-obox-layers-builder-4不会以4结尾,但可能以任何数字结束。

有没有办法将变量用作我的选择器,例如#accordion-section-sidebar-widgets-obox-layers-builder-*

4 个答案:

答案 0 :(得分:2)

假设这是你的HTML

<div id="accordion-section-sidebar-widgets-obox-layers-builder-4">
   hallo
</div>
<div id="accordion-section-sidebar-widgets-obox-layers-builder-6">
  bye
</div>

使用此

$('div[id^='accordion-section-sidebar-widgets-obox-layers-builder']').innerHml()

将返回

  • hallo
  • 再见

链接到fiddle

我遗漏了选择器的最后一部分。这应该可以让你开始。

答案 1 :(得分:0)

您可以使用regexp

​$("[id^=accordion-section-sidebar-widgets-obox-layers-builder-][id$= > h3:nth-child(1)]")

答案 2 :(得分:0)

你可以在id上使用jQuery的属性包含前缀选择器。

Docs

答案 3 :(得分:0)