我有这个标签ID,非常不常见:
<select name="/State" id="/State">
似乎我不能使用jQuery选择器$('#/State')
来选择这个对象。
我可以使用$("#\U002FState")
选择它,但我无法打印id
属性:
javascript:alert($("#\U002FState").attr('id'))
如何正确选择此对象?
答案 0 :(得分:1)
在\\
/
$('#\\/State')
其他链接:
jQuery选择器:http://api.jquery.com/category/selectors/
W3C推荐:http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier
答案 1 :(得分:0)
除非您仅支持HTML5
个浏览器,否则按ID选择时会遇到问题,因为ID中的/
在HTML4
中无效。
http://www.w3.org/TR/html401/types.html#type-name
ID 和 NAME 令牌必须以字母([A-Za-z])开头,后面可以跟任意数量的字母,数字([0- 9]),连字符(“ - ”),下划线(“_”),冒号(“:”)和句号(“。”)。
您可以使用attribute-equals-selector
[docs],但效果会降低:
$('select[id="/State"]');
虽然像我上面那样包含element-selector
[docs]很有帮助。
以下是一个有效的示例: http://jsfiddle.net/LVEjS/
答案 2 :(得分:0)
解释here /
不是ID中的有效字符,因此您的代码不符合标准,最好解决该问题,而不是解决它。