JQuery中的id选择器含有特殊字符时,不能选中dom元素的解决方法
1、jquery类库在我们实际项目中用的很多,大家经常需要根据控件的id,获取对应的html元素。但是:当id含有特殊字符的时候,是不能选中的。
2、自己简单的测试了下,jquery的id选择器只支持,单词、阿拉伯数字、下划线、中划线。其中单词,包括英文字母、汉字,但是控件id属于客户不可见内容,实际中开发人员是不用汉字作为id的,这里不考虑。
3、自己写了一个工具方法,开人人员只要将id转义后,jquery就能选中了,不用再考特殊字符的问题。代码是基于jquery1.6版本。
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;
}
说明随着JQuery版本的演进,对特殊字符的支持应该会越来越好。为了不给自己找麻烦,特殊字符还是能不用则不用。
JQuery中的id选择器含有特殊字符时,不能选中dom元素的解决方法相关推荐
- JQuery中的ID选择器
页面的任何操作都需要节点的支撑,开发者如何快速高效的找到指定的节点也是前端开发中的一个重点.jQuery提供了一系列的选择器帮助开发者达到这一目的,让开发者可以更少的处理复杂选择过程与性能优化,更多专 ...
- jquery id选择器获取id值含有特殊字符的方法
最近项目中table元素的id值中总是含有特殊字符,如何获取含有特殊字符的id值? 试了试这三种方法.发现只有第二种获取到了name. 如果把id 当作参数传递,又是什么情况? 参数传递的方式可以使用 ...
- jQuery框架学习第二天:jQuery中万能的选择器
jQuery框架学习第一天:开始认识jQuery jQuery框架学习第二天:jQuery中万能的选择器 jQuery框架学习第三天:如何管理jQuery包装集 jQuery框架学习第四天:使用jQu ...
- Easyui中使用jquery或js动态添加元素时出现的样式失效的解决方法
Easyui中使用jquery或js动态添加元素时出现的样式失效的解决方法 在添加完之后,可以使用 $.parser.parse();这个方法进行处理: (1) 对整个页面重新渲染: $.parser ...
- CSS中的id选择器和class选择器简单介绍
<!-- CSS中选择器 CSS有两种选择器id和class,总之如果说你想在HTML元素中设置CSS属性, 你要在元素中设置id和class选择器.那么我们现在来一个一个的介绍这两中选择器 i ...
- 【jQuery 教程系列第 10 篇】jQuery 中的过滤选择器(基本筛选器)
这是[jQuery 教程系列第 10 篇],如果觉得有用的话,欢迎关注专栏. jQuery 中除了一些 基本选择器 ,也有一些过滤选择器,本篇博客仅挑选其中的几个简单说明一下,其它的大家可以点击 jQ ...
- CSS:基本选择器中的ID选择器和class选择器的区别
ID选择器 : 通过标签的id名称来选择标签 # id 类选择器 : class选择器,选择一个类别 .className 区别: 1. ID 选择器的是以井号 # 开头来 ...
- PL/SQL中查询Oracle大数(17位以上)时显示科学计数法的解决方法
PL/SQL中查询Oracle大数(17位以上)时显示科学计数法的解决方法 参考文章: (1)PL/SQL中查询Oracle大数(17位以上)时显示科学计数法的解决方法 (2)https://www. ...
- universal image loader在listview/gridview中滚动时重复加载图片的问题及解决方法
universal image loader在listview/gridview中滚动时重复加载图片的问题及解决方法 参考文章: (1)universal image loader在listview/ ...
最新文章
- 百练OJ:4148:生理周期
- 揭开SAP Customer Management for S/4HANA的神秘面纱
- 鼠标右键 移动选定的文件夹到指定位置_iRightMouse:一款免费Mac鼠标右键增强神器...
- 【Java】GUI桌面弹球游戏
- 利用图片的 onerror 事件载入默认图片
- 社工库源码mysql_社工库源码
- Hive常用正则表达式
- Python中shape简易用法
- 成立1年的水母智能,AI智能设计生意做得如何?
- matlab专区--------------matlab里面如何保留小数特定位数
- 使用html框架制作一个网站布局
- 三位数除以两位数竖式计算没有余数_四年级上册数学三位数除两位数练习题没有余数...
- 连平县新视界-连平2018年公开招聘教职员66人
- 《柳叶刀》专刊 | 城市设计、交通与人群健康:篇一
- vue-router路由history模式+nginx部署项目到非根目录下(实践版)
- VS2019+OpenCV4.5.1 环境配置+一劳永逸法(附下载地址)
- 分享一个时间增加的办法
- 小学计算机老师毕业留言,高三老师给学生的毕业留言
- 计算机英语写一封邮件给汤姆作文,英语作文带翻译写一封电子邮件
- 【Python与数学建模】蒙特卡洛模拟仿真(附完整详细代码)
热门文章
- 6-3 工作汇报-有效展现业绩-项目成功与失败时的汇报方式
- Ubuntu下快捷键操作
- GVM(OpenVAS)创建扫描报错:Failed to find config ‘d21f6c81-2b88-4ac1-b7b4-a2a9f2ad4663‘解决方法
- EI期刊《系统工程与电子技术》投稿经历
- 高级定时器实例-PWM互补输出与刹车功能
- Science | 植物和微生物的新途径:与共生微生物和病原微生物的相互作用驱动植物进化!...
- libapache2-mod-auth-mysql_軟件包libapache2-mod-auth-mysql不可用
- 电销企业外呼系统如何选最合适?
- 华为魔术magic2拆机图_荣耀Magic2拆解:蝶式五轨滑屏 + 前后六摄
- C4D快速入门教程——排列复制