How to escape characters in jQuery selector
Escape characters for selectors
Because characters such as hash (#
)
have special meaning, if you want to use them in selection
expressions, you'll need to backslash escape those characters.
The following list of characters all contain special meanings inside of selectors, and should be backslash escaped if you want to match against them:
# ; & , . + * ~ ' : " ! ^ $ [] ( ) = > | /
For example, if you use the dollar sign as a naming convention for IDs in your HTML documents, you'd write an ID selector like this:
<!DOCTYPE html>
<html>
<head>
<script src="http://java2s.com/style/jquery-1.8.0.min.js">
</script>
<script>
var n = $"#\\$specialId").length;
document.writeln(n);
</script>
</head>
<body>
<div id="$specialId">T-Rex</div>
</body>
</html><!--from ww w.j av a 2s . c o m-->
Escape the dot and []
The following code shows how to escape the dot and [].
<html>
<head>
<script src="http://java2s.com/style/jquery-1.8.0.min.js"></script>
<style type="text/css">
.changeP { font-weight: bold; color:red;}
</style>
<!--from w w w . ja v a 2s. c om-->
<script type="text/javascript">
$(document).ready(function(){
$("#myID\\.index\\[1\\]").css("border","3px solid red");
});
</script>
</head>
<body>
<div id="myID.index[0]">0</div>
<div id="myID.index[1]">1</div>
<div id="myID.index[2]">2</div>
</body>
</html>