JQuery 选择器处理特殊字符

摘要:
在使用JS选择器的时候,如果含有特殊字符,则选择器选择不了,比如:元素的Id为:QW~~,$,这样是选择不了的,所以就要对特殊字符进行转义。

在使用JS 选择器的时候,如果含有特殊字符,则选择器选择不了,比如:元素的Id为:QW~~,$("#QW~~"),这样是选择不了的,所以就要对特殊字符进行转义。JS转义函数如下:

function escapeJquery(srcString) {
// 转义之后的结果
var escapseResult = srcString;
// javascript正则表达式中的特殊字符
var jsSpecialChars = ["\", "^", "$", "*", "?", ".", "+", "(", ")", "[",
"]", "|", "{", "}"];
// jquery中的特殊字符,不是正则表达式中的特殊字符
var jquerySpecialChars = ["~", "`", "@", "#", "%", "&", "=", "'", """,
":", ";", "<", ">", ",", "/"];
for (var i = 0; i < jsSpecialChars.length; i++) {
escapseResult = escapseResult.replace(new RegExp("\"
+ jsSpecialChars[i], "g"), "\"
+ jsSpecialChars[i]);
}
for (var i = 0; i < jquerySpecialChars.length; i++) {
escapseResult = escapseResult.replace(new RegExp(jquerySpecialChars[i],
"g"), "\" + jquerySpecialChars[i]);
}
return escapseResult;
}
转义后的则为: QW~~
不用转义的话就用
document.getElementById()

免责声明:文章转载自《JQuery 选择器处理特殊字符》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇solr(三) : 导入数据库表数据Webservice返回json数据格式下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

jqgrid 事件说明

Events(事件) 事件响应动作被设置为表格的属性,以下定义了行被选中时的响应: var lastSel; jQuery("#gridid").jqGrid({ ...    onSelectRow: function(id){       if(id && id!==lastSel){          jQuery('#gridid'...

jQuery多图上传Uploadify插件使用及传参详解

因为工作需要,这两天接触到了Uploadify插件,由于是第一次用,花了我近一天的时间。下面我把我在用这个插件过程详细的分享出来,也让自己巩固一下,也希望能帮助到你。 所需文件: jquery-1.8.2.min.js (可以低版本)uploadify.cssswfobject.js uploadify.swfjquery.uploadify.js upl...

HTML5 Canvas 获取网页的像素值。

我之前在网上看过一个插件叫做出JScolor   颜色拾取器  说白了就是通过1*1PX的DOM设置颜色值通过JS来获取当前鼠标点击位置DOM的颜色值。 自从HTML5 画布出来之后。就有更好的方法来获取了,比方郭阿里巴巴ICON矢量库 用的SVG和渐变来进行绘制: 我昨天用Canvas来绘制了一下。由于Canvas有现成的方法getImageDat...

NetMQ——推拉模式 Push-Pull

推送端 using (var pushSocket = new PushSocket("@tcp://127.0.0.1:1212")) { while (true) { //pushSocket.Connect();...

jQuery FileUpload 插件[转]

jQuery FileUpload 插件 在前端开发过程中,我们经常要上传文件,这是我们就要用<input type="file" name="file">这是原生的写法,看起来不是很美观。下面我们聊一种比较优雅的实现方法。 上传文件 首先,我们隐藏的input框,并将input框的click事件绑定到它上面的button元素上(通过oncl...

AdminLte 框架 和 requireJs 整合的问题

最近在 做一个基于 adminLte 框架的项目,在我将 require 引进项目之后,框架中的 adminlte.js 中搞的左侧边栏 就不起作用了。 刚开始以为是 各位不符合 requireJs 的书写格式,随后将 adminLTe。js 的 源码 修改为 define() 的格式,然而 当然还是没有效果。 define(['jquery'],func...