选择ID为包含'的项目

时间:2016-08-05 06:10:58

标签: javascript jquery

我有一个id为

的元素

link-21-'some-text''''sometext'-1

我无权在源头更改id。有没有办法使用id选择它们?

jQuery("#link-21-'some-text''''sometext'-1")因为显而易见的原因而抛出错误。有没有解决这个问题?

3 个答案:

答案 0 :(得分:2)

由于它包含一些特殊含义字符,因此请使用attribute equals selectorescapes the special meaning character

检查j Query selctor docs

  

使用任何元字符(例如!"#$%&'()* +,。/:;< =>?@ [] ^ `{|}〜)作为名称的文字部分,必须使用两个反斜杠进行转义:\。例如,id =" foo.bar"的元素可以使用选择器$(" #foo \ .bar")。W3C CSS规范包含the complete set of rules regarding valid CSS selectors。同样有用的是Mathias Bynens在CSS character escape sequences for identifiers上的博客文章。

所以它可以像跟随或逃避每个元字符。

jQuery('[id="link-21-'some-text''''sometext'-1"]')

答案 1 :(得分:0)

这应该有效

  $('[id*="&apos"]')

选择其ID中都有&'s的元素

答案 2 :(得分:0)

使用通用服务器端语言生成简单ID

使用正确的jquery选择器来选择元素$('#link-21')

假设数据库中的数据格式正确,您应该有一个唯一的主键,使用该唯一键来形成您的唯一ID