关于jQuery ID选择器不能使用特殊字符的问题

关于jQuery的ID选择器大家都不陌生。今天我遇到了如题目所描述的问题。
我要操作的Dom元素的id包含特殊字符,并且目标DOM 的ID值不能改动。
(pis:不多述原因,一般这种情况不多,我遇到了,我思考了,我解决了而已)。
用jQuery的ID选择器会出现错误。究其原因是因为ID选择器匹配字符串用的正则是 ^#([\w-]+)$,
解释这段正则:以#开头 并以 包含一个以上所有字母及下划线和中划线-字符串结尾  的字符串
对正则稍微熟悉的人都能明白。
好了一切都明白了,当id中包含 所有字母及下划线和中划线- 以外的字符的时候 是不能被匹配的,这时候ID选择器也就不起作用了。

解决这个问题有3中方法:
①直接不用特殊字符。这种方法最好。
②用这样 $(document.getElementById(domId))得到对应的jQuery对象
③改jQuery源码的匹配表达式  加上一些你想要的 特殊字符  比如  ^#([\w-\=\|]+)$,就是加上了 =和|。

转载于:https://my.oschina.net/u/554692/blog/145783

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值