如何选择id包含|的元素使用jquery id选择器

时间:2017-11-07 07:12:04

标签: javascript jquery

如果元素ID为"mainid|label",则在使用$("#mainid|label")时会抛出异常。

Error: Syntax error, unrecognized expression: #mainid|label

然后如何使用jquery id选择器获取此元素?

3 个答案:

答案 0 :(得分:4)

您也可以使用$.escapeSelector

$("#"+$.escapeSelector("mainid|label"))

$.escapeSelector自动管理字符串中的每个特殊字符

答案 1 :(得分:2)

自|是一个元字符,你必须逃脱它

 $("#mainid\\|label")

Documentation

  

使用任何元字符(例如!"#$%&'()* +,。/:;< =>?@ [] ^`{| }〜)作为名称的文字部分,必须使用两个反斜杠进行转义:\。例如,id =" foo.bar"的元素可以使用选择器$(" #foo \ .bar")。

答案 2 :(得分:0)

  1. 使用attribute selector
      

    描述:选择具有指定属性的元素,具有任何值。

  2. 
    
    console.log($('[id="mainid|label"]').text())
    
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <span id='mainid|label'>mainid|label</span>
    &#13;
    &#13;
    &#13;