Javascript 如何处理具有特殊字符的数据目标值?

Javascript 如何处理具有特殊字符的数据目标值?,javascript,jquery,html,css,twitter-bootstrap-3,Javascript,Jquery,Html,Css,Twitter Bootstrap 3,我正在实现一个引导弹出窗口。我在数据目标中加入了一些带有特殊字符的值。这些值来自DB,这个弹出窗口通过循环实现 我在学校试过了。如何打开带有特殊字符的弹出窗口 引导示例 基本模态示例 开放模态 &时代; 模态头 模态中的一些文本 接近 您需要“转义”选择器中的特殊字符。这: data-target="#my(Modal" 应该是: data-target="#my\(Modal" 或: 只添加了一个\的示例代码: @导入url(https://maxcdn.bootstrapcdn.c

我正在实现一个引导弹出窗口。我在数据目标中加入了一些带有特殊字符的值。这些值来自DB,这个弹出窗口通过循环实现

我在学校试过了。如何打开带有特殊字符的弹出窗口


引导示例
基本模态示例
开放模态
&时代;
模态头
模态中的一些文本

接近
您需要“转义”选择器中的特殊字符。这:

data-target="#my(Modal"
应该是:

data-target="#my\(Modal"
或:

只添加了一个
\
的示例代码:

@导入url(https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css)

基本模态示例
开放模态
&时代;
模态头
模态中的一些文本

接近
你必须避开特殊字符,以便让jQuery知道你想用它的方式使用字符,而不应该把它看作语法错误。

function escapeString(str) {
    return (str + '').replace(/[\\"')(]/g, '\\$&').replace(/\u0000/g, '\\0')
}
// Add special characters here       ^ -- after \\
// This allows single, and double quotes, 
// opening, and closing parentheses.
使用上述函数包装您的目标值:

data-target="+ escapeString(targetValue) +"

{{rule.name}
我在rule.name中有特殊字符,例如:“作为测试数据的副本(1)”
它与引导模式的id属性绑定。通过此UI模式或弹出窗口
未打开并显示规则名称。请帮助如何修剪或逃生
这里有特殊人物吗?

谢谢你的回答。我有一个疑问,如果多个括号或逗号会出现,那么它应该会工作吗?请参阅-基本上任何在CSS中具有特殊含义的字符,例如,
,~+:必须转义。像
my(Modal).foo.bar这样的id将变成
my\(Modal\)\.foo\.bar
data-target="+ escapeString(targetValue) +"
<div ng-repeat="rule in ruleDetails">
  <div>{{rule.name}} <i data-toggle="modal" data-target="#{{ rule.name }}"></i>
  </div>
  <div class="modal fade" id="{{ rule.name }}" tabindex="-1" role="dialog"></div> 
</div>

I have special characters in rule.name for example: 'as-copy(1) from test data' 
which is bounded with id attribute of bootstrap modal. By this UI modal or popup 
is not opening and displayed rule name. Please help how to trim or escape 
special characters here?