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元素的解决方法相关推荐

  1. JQuery中的ID选择器

    页面的任何操作都需要节点的支撑,开发者如何快速高效的找到指定的节点也是前端开发中的一个重点.jQuery提供了一系列的选择器帮助开发者达到这一目的,让开发者可以更少的处理复杂选择过程与性能优化,更多专 ...

  2. jquery id选择器获取id值含有特殊字符的方法

    最近项目中table元素的id值中总是含有特殊字符,如何获取含有特殊字符的id值? 试了试这三种方法.发现只有第二种获取到了name. 如果把id 当作参数传递,又是什么情况? 参数传递的方式可以使用 ...

  3. jQuery框架学习第二天:jQuery中万能的选择器

    jQuery框架学习第一天:开始认识jQuery jQuery框架学习第二天:jQuery中万能的选择器 jQuery框架学习第三天:如何管理jQuery包装集 jQuery框架学习第四天:使用jQu ...

  4. Easyui中使用jquery或js动态添加元素时出现的样式失效的解决方法

    Easyui中使用jquery或js动态添加元素时出现的样式失效的解决方法 在添加完之后,可以使用 $.parser.parse();这个方法进行处理: (1) 对整个页面重新渲染: $.parser ...

  5. CSS中的id选择器和class选择器简单介绍

    <!-- CSS中选择器 CSS有两种选择器id和class,总之如果说你想在HTML元素中设置CSS属性, 你要在元素中设置id和class选择器.那么我们现在来一个一个的介绍这两中选择器 i ...

  6. 【jQuery 教程系列第 10 篇】jQuery 中的过滤选择器(基本筛选器)

    这是[jQuery 教程系列第 10 篇],如果觉得有用的话,欢迎关注专栏. jQuery 中除了一些 基本选择器 ,也有一些过滤选择器,本篇博客仅挑选其中的几个简单说明一下,其它的大家可以点击 jQ ...

  7. CSS:基本选择器中的ID选择器和class选择器的区别

    ID选择器  :  通过标签的id名称来选择标签     # id 类选择器  :  class选择器,选择一个类别      .className 区别: 1.  ID 选择器的是以井号 # 开头来 ...

  8. PL/SQL中查询Oracle大数(17位以上)时显示科学计数法的解决方法

    PL/SQL中查询Oracle大数(17位以上)时显示科学计数法的解决方法 参考文章: (1)PL/SQL中查询Oracle大数(17位以上)时显示科学计数法的解决方法 (2)https://www. ...

  9. universal image loader在listview/gridview中滚动时重复加载图片的问题及解决方法

    universal image loader在listview/gridview中滚动时重复加载图片的问题及解决方法 参考文章: (1)universal image loader在listview/ ...

最新文章

  1. 百练OJ:4148:生理周期
  2. 揭开SAP Customer Management for S/4HANA的神秘面纱
  3. 鼠标右键 移动选定的文件夹到指定位置_iRightMouse:一款免费Mac鼠标右键增强神器...
  4. 【Java】GUI桌面弹球游戏
  5. 利用图片的 onerror 事件载入默认图片
  6. 社工库源码mysql_社工库源码
  7. Hive常用正则表达式
  8. Python中shape简易用法
  9. 成立1年的水母智能,AI智能设计生意做得如何?
  10. matlab专区--------------matlab里面如何保留小数特定位数
  11. 使用html框架制作一个网站布局
  12. 三位数除以两位数竖式计算没有余数_四年级上册数学三位数除两位数练习题没有余数...
  13. 连平县新视界-连平2018年公开招聘教职员66人
  14. 《柳叶刀》专刊 | 城市设计、交通与人群健康:篇一
  15. vue-router路由history模式+nginx部署项目到非根目录下(实践版)
  16. VS2019+OpenCV4.5.1 环境配置+一劳永逸法(附下载地址)
  17. 分享一个时间增加的办法
  18. 小学计算机老师毕业留言,高三老师给学生的毕业留言
  19. 计算机英语写一封邮件给汤姆作文,英语作文带翻译写一封电子邮件
  20. 【Python与数学建模】蒙特卡洛模拟仿真(附完整详细代码)

热门文章

  1. 6-3 工作汇报-有效展现业绩-项目成功与失败时的汇报方式
  2. Ubuntu下快捷键操作
  3. GVM(OpenVAS)创建扫描报错:Failed to find config ‘d21f6c81-2b88-4ac1-b7b4-a2a9f2ad4663‘解决方法
  4. EI期刊《系统工程与电子技术》投稿经历
  5. 高级定时器实例-PWM互补输出与刹车功能
  6. Science | 植物和微生物的新途径:与共生微生物和病原微生物的相互作用驱动植物进化!...
  7. libapache2-mod-auth-mysql_軟件包libapache2-mod-auth-mysql不可用
  8. 电销企业外呼系统如何选最合适?
  9. 华为魔术magic2拆机图_荣耀Magic2拆解:蝶式五轨滑屏 + 前后六摄
  10. C4D快速入门教程——排列复制