簡體   English   中英

HTML名稱屬性中的大括號

[英]Curly braces in HTML name attribute

我正在嘗試根據名稱檢索DOM元素。 不幸的是,他們的名字里面有花括號{}

jQuery(1.6.4)能夠毫無問題地檢索它們。 但此時我正在嘗試用getElementsByName()替換這些調用,但是gEBN不匹配查詢字符串中具有大括號的任何內容。 我試過反斜杠一次又一次地逃避它無濟於事。

有沒有辦法在不改變使用花括號的約定的情況下執行此操作?

它看起來也不在名稱attr中允許的字符集中。

更新 :似乎可以在Chrome中使用,但不能在Safari for Windows中使用。 但真正奇怪的是,甚至Safari for Windows也能很好地處理這些小提琴。

如果您閱讀選擇器上的jQuery文檔頁面,您會看到:

要使用任何元字符(例如!“#$%&'()* +,。/:; <=>?@ [] ^`{|}〜)作為名稱的文字部分,必須使用兩個反斜杠進行轉義: \\\\ 。例如,id =“foo.bar”的元素可以使用選擇器$("#foo\\\\.bar")

當您執行明確超出標准允許范圍的事情時,您應該期待“奇怪”的結果。 如果您選擇退出預訂,那么您自己就是一個人。 有些瀏覽器會工作,有些則不會。 過去工作的人會在新版本發布時不會發出警告而中斷。

所以這取決於你想要做什么。 如果你只是為自己或小團隊建立一些東西,這可能沒問題。 如果你正在為一般觀眾建立一些東西,最好堅持標准而不是使用不允許的角色。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM