jquery中div [id = testing]和div [id $ = testing]之间的区别

时间:2014-07-09 07:23:40

标签: jquery html css

HTML

<div id="testing">MY TEDT</div>
<div id="testing1">MY TEDT Number 1</div>
<div id="testing2">MY TEDT Number 2</div>

JQUERY

$('div[id=testing1]').css("display", "none");

我已经使用上面的jquery代码来隐藏带有id测试的div。它工作正常。请查看以下代码。

$('div[id$=testing1]').css("display", "none");

这段代码也是这样做的。我只是想知道$在这里使用的目的是什么?因为没有$它也可以正常工作。

Fiddle DEMO

5 个答案:

答案 0 :(得分:3)

第一个选择标识为testing1的元素。它总是只选择一个元素。最好使用$('#testing1').css("display", "none");,因为id是唯一的。

第二个代码将选择ID为endingtesting1的元素。这可以选择多个元素。

实施例。第二个代码将选择标识为testtesting1的元素。因为它最终有testing1

答案 1 :(得分:2)

下面:

$('div[id$=testing1]').css("display", "none");

$表示以tests1结尾的id将{c}应用于display:none;

在正则表达式中,您经常会看到以下字符:

^ : starts with
$ : ends with

所以,如果你有一个id为id的元素:

<div id="div-box">New Division</div>

这三者相似:

$('#div-box')
$('[id^="div"]')
$('[id$="box"]')

答案 2 :(得分:2)

$('div[id=testing1]').css("display", "none");

是选择id值为testing1的所有元素

$('div[id$=testing1]').css("display", "none");

匹配id值以testing1

结尾的每个元素

答案 3 :(得分:1)

$ 结尾。

我建议使用$('#testing1')代替$('div[id=testing1]')。 (第一个选择器要快得多)

答案 4 :(得分:1)

$ 选择器结尾。

所以你说得对,你的例子没用,但是在这里:

$('div[id$=ting1]').css("display", "none");

id="testing1"仍然隐藏。

如果您想按ID选择元素,您应该使用:$('#testing1'),因为这种形式的ID选择器要快得多。

文档here