This question already has answers here:
Find html element which id starts with

(5个答案)


3年前关闭。




我有这个jQuery代码:
$( "#editDialog" ).dialog({
  autoOpen: false,
  show: {
    effect: "blind",
    duration: 1000
  },
  hide: {
    effect: "explode",
    duration: 1000
  }
});
但是我有几个具有以下ID的div:editDialog-0editDialog-1,....,editDialog-n
我如何为所有这些div制作jQuery代码,就像上面的代码一样?

最佳答案

使用jQuery starts with 属性选择器

$('[id^=editDialog]')

替代解决方案-1(强烈推荐)

较干净的解决方案是为每个div和用途添加一个通用类
$('.commonClass')

但是如果html标记不在您的手中并且由于某种原因无法更改它,则可以使用第一个标记。

替代解决方案-2 (如果是n is a large number则不推荐)
(根据@Mihai Stancu的建议)
$('#editDialog-0, #editDialog-1, #editDialog-2,...,#editDialog-n')
注意:如果有2个或3个选择器,并且列表没有更改,这可能是一个可行的解决方案,但它是不可扩展的,因为当城镇中有新的ID时,我们必须更新选择器。

关于javascript - ID的jQuery选择器以特定文本开头,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23223526/

10-09 17:57