如果元素ID为"mainid|label"
,则在使用$("#mainid|label")
时会抛出异常。
Error: Syntax error, unrecognized expression: #mainid|label
然后如何使用jquery id选择器获取此元素?
答案 0 :(得分:4)
您也可以使用$.escapeSelector
$("#"+$.escapeSelector("mainid|label"))
$.escapeSelector
自动管理字符串中的每个特殊字符
答案 1 :(得分:2)
自|是一个元字符,你必须逃脱它
$("#mainid\\|label")
使用任何元字符(例如!"#$%&'()* +,。/:;< =>?@ [] ^`{| }〜)作为名称的文字部分,必须使用两个反斜杠进行转义:\。例如,id =" foo.bar"的元素可以使用选择器$(" #foo \ .bar")。
答案 2 :(得分:0)
描述:选择具有指定属性的元素,具有任何值。
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;