错误选择具有特定id的div元素 - jQuery,javascript的初学者

时间:2012-09-26 22:17:46

标签: javascript jquery dom jquery-selectors

我正在使用jQuery在DOM中选择元素,我尝试了以下内容:

$(document).ready(function() {

      $("a").toggle(function(){
        $("div[@id=SomeID]").hide('slow');
        },function(){
        $("div[@id=SomeID]").show('fast');
       });

});

在html源代码中,我确实有这一部分:

<div id="SomeID">

      <!-- div code -->

</div>

但是,当我点击锚标记时,我收到以下错误:

语法错误,无法识别的表达式:div [@ id = SomeID]

关于这里出了什么问题的任何想法?我是jQuery和javaScript的初学者,所以非常感谢任何帮助。

2 个答案:

答案 0 :(得分:4)

要在jQuery中按id选择元素,请使用与CSS中相同的语法:

$('#someID');

要使用attribute-equals选择器格式,请使用:

$('div[id="someID"]');

参考文献:

答案 1 :(得分:1)

您使用的是错误的选择器.Id必须以

为前缀

这些是有效的

$("#SomeID").hide('slow'); //  element with id SomeID , can be any element
$("div#SomeID").hide('slow'); //  Div with id SomeID
$("div[id=SomeID]").hide('slow'); //  Div with id SomeID
$("div[id^=SomeID]").hide('slow'); //  Div id that starts with SomeID
$("div[id*=SomeID]").hide('slow'); //  Div id that has SomeID in its id attribute
$("div[id=SomeID]").hide('slow'); //  Div id that ends with SomeID