使用jQuery获取HTML元素

Joh*_*van 5 jquery css-selectors

我有一些ID为"div1","div2"......"divx"的DIV.我想对它们进行操作.有没有办法获得元素ID .contains"div".还有其他想法吗?

Pet*_*tai 11

您可以使用带选择器启动

$("div[id^='div']")
Run Code Online (Sandbox Code Playgroud)

上面将获取所有id具有以字母开头的属性的div div.

jsFiddle示例使所有具有id的div都不div...可见.


这里是如何处理棘手的情况,如果你想匹配div后跟一个数字但没有div其他东西.所以div1会匹配,但divx不会.

在这种情况下,我们使用带有函数的filter().当我们想要匹配时,该函数应返回true,否则返回false.match()和正则表达式对此非常有用(您可以使用它[0-9]来表示正则表达式中的数字或更简单[\d]):

$("div").filter(function() {
    return $(this).attr("id").match(/^div[\d]+$/)
})
Run Code Online (Sandbox Code Playgroud)

在这种情况下,attr()返回指定属性的值id.

jsFiddle示例使得所有div后跟数字消失,但不会div跟随其他内容.


Dum*_*Guy 7

你可以使用它(我还没有测试过):

jQuery("div[id^='div']")
Run Code Online (Sandbox Code Playgroud)

这将获得所有以"div"开头的div元素id.

如果你想要所有包含 "div" 的div元素,那么你可以使用它:id

jQuery("div[id*='div']")
Run Code Online (Sandbox Code Playgroud)