如果是这样,你如何选择jQuery?即,$("#a b")
使用<b>
查找节点内的所有id=a
个节点。
答案 0 :(得分:30)
根据HTML 4.0 specification for basic types:
ID和NAME令牌必须以a开头 信([A-Za-z]),可以遵循 任意数量的字母,数字 ([0-9]),连字符(“ - ”),下划线 (“_”),冒号(“:”)和句号 ( “”)。
即使空格有效,带有空格的id属性也会被jQuery解释为具有当前选择器语法的ancestor descendant selector。
答案 1 :(得分:9)
简短的回答是否定的。字母,数字,下划线,连字符,句号和冒号。
(dar,karim打败了我。)
答案 2 :(得分:9)
虽然这是一个老问题,但我认为我会在HTML 5规范上分享有关那些遇到此问题的人的信息,就像我在问到这些问题几年后所做的那样。
根据HTML 5 Spec:
该值必须在元素的主子树中的所有ID中唯一,并且必须至少包含一个字符。该值不得包含任何空格字符。
它还说:
ID可以采取什么形式没有其他限制;特别是,ID可以只包含数字,以数字开头,以下划线开头,仅包含标点符号等。
答案 3 :(得分:4)
这是一个类比的论据。
考虑CLASS选择器。 与ID 不同,但有相似之处。
你显然不能拥有带嵌入空间的 class 名称,因为类列表
<p class='a b c'>some text</p>
无法与带空格的单个名称区分开来。
好吧,你不能有一个id名列表,无论如何,所以这个比喻分崩离析,但我想我们已经变得太快了,试图插入空间而不是属于