javascript - 如何获取其id具有点和美元符号的dom元素的值

标签 javascript jquery html angularjs

我在获取其 id 包含特殊字符如 .$ 符号的元素时遇到问题。

我的元素 ID 是 "XS_19MAY2016_012720_311.04$_cal" 我使用的 jQuery 语法如下:

$("#"+xyz+"_cal").val()   where xyz is variable having above id.

我得到的错误是:

Error: Syntax error, unrecognized expression: #XS_19MAY2016_012720_311.04$_cal.

我做错了什么或我需要做些什么来纠正它。

最佳答案

只是转义字符:

var foo = 'XS_19MAY2016_012720_311.04$';
$('#' + foo.replace(/[.$]/g, '\\$&') + '_cal').text('foo')
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="XS_19MAY2016_012720_311.04$_cal"></div>

关于javascript - 如何获取其id具有点和美元符号的dom元素的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37317965/

相关文章:

html - css3 向上滑动过渡

html - 如何使用箭头使图像填充 div?

php - 通过表单或 Url 传递值

javascript - 有没有办法延迟提交表单来执行一些动画

jquery - Access-Control-Allow-Origin header 不起作用 - 我做错了什么?

javascript - 从 radio :checked to div corresponding with session id 设置类

html - 防止最小内容列扩展

javascript - 如何仅在单击按钮后验证数据?

javascript - Amazon CloudFront - 限制 MP3 在特定网站上播放

javascript - 旋转字符的 HTML 按钮