Id中帶冒號,Jquery如何獲取

若是id中存在冒號,例如 <p id="aa:bb:cc">我是一個段落</p>css

經過jquery直接使用#id值, 是找不到這個dom對象的,若是想要獲取這個id,能夠經過如下幾種方式:

1、$("#aa\\:bb\\:cc")。 html

       雙\\先轉義爲\, 而後jquery內部操做 \:再轉義爲:   詳細的查看爲何,能夠參考:http://www.javashuo.com/article/p-yohkzidr-gq.htmljquery

  冒號(:)屬於js中不用轉義的普通可見字符, "#a:b" === "#a\:b"dom

   "#a\\:b" 爲避免css selector僞類標識符號衝突的解法, 通過 js字符串轉義,須要兩個反斜槓\, 最後在 querySelectorAll接口中,將\:轉換爲htm

2、$("[id ^= 'aa:bb:cc']") 或者  $("[id = 'aa:bb:cc']") 。 對象

  $("[id ^= 'aa:bb:cc']") 表示id以‘aa:bb:cc’開頭的集合;後者表示id等於‘aa:bb:cc’的集合。blog

       對於id中含有冒號的狀況, 能夠使用"[id^='a:b']"的表寫方式, 這種不須要對冒號轉義, 由於這種格式不存在衝突的可能。接口

     建議 id可變的狀況,都使用"[id^='a:b']"方式。字符串

 

補充:get

3、document.getElementById("aa:bb:cc"); //非jquery方式,萬能的獲取id的方式

相關文章
相關標籤/搜索