替换 JavaScript 模板中相同值的多个实例
Replace multiple instances of the same value in a javascript template
>我有一个javascript模板,我想在整个模板的多个位置替换一个设置的值,但是在我当前的代码中,只有值占位符的第一个实例正在更改。
如何将所有 {{color}} 占位符替换为相同的值?
我的模板:
<script type="text/template" id="styleTemplate">
.item {
color: {{color}};
border-color:{{color}};
}
</script>
我的JS:
var thisColor = "#000";
var template = $("#styleTemplate").html();
$('#styleTarget').html(template.replace("{{color}}",thisColor));
结果:
.item {
color: #000;
border-color:{{color}};
}
Akamaozu 真的懒得让他的代码有效。正则表达式必须包含在斜杠中,而不是反斜杠中。当您必须转义具有特殊含义的字符或创建具有特殊含义的元字符时,正则表达式中需要反斜杠。因此,当您将代码更改为此代码时,它将起作用:
var thisColor = "#000",
search = /{{color}}/g,
template = $("#styleTemplate").html();
$('#styleTarget').html(template.replace(search, thisColor));
演示。
替换:
$('#styleTarget').html(template.replace("{{color}}",thisColor));
跟:
$('#styleTarget').html(template.replace('{{color}}'g,thisColor));
String.prototype.replace
将仅替换第一场比赛。我所做的是将搜索字符串替换为一个正则表达式,该表达式将搜索所述搜索字符串的所有实例。
干杯!
相关文章:
- 当同一浏览器的两个实例浏览时,Javascript页面如何具有唯一的ID
- 在哪里可以找到RXUI Javascript'时间飞逝'实例
- 在Javascript中对类的每个实例调用一个方法
- VS2010 javascript调试器希望在VS2010的新实例中启动
- 如何用javascript调用函数,然后在滚动事件中调用该函数的特定实例
- 有没有办法用客户端的javascript生成一个AmazonEC2实例
- google在类内映射javascript directionsService.route请求:将类实例传递给回调函数
- JavaScript:如果现有对象被实例化为具有特定值,如何创建警报
- 用javascript创建另一个对象的实例
- 删除数组Javascript中字符串的所有实例
- 我应该如何用javascript实例化这个日期
- 如何使用javascript独立地为聚合物自定义元素的每个实例的lightdom设置样式
- 如何使用 JavaScript 正则表达式搜索除一个实例之外的所有内容
- Javascript:只有在代码中使用单个实例时,函数才能正常工作
- 调用函数和创建函数实例之间的Javascript差异
- 如何在Javascript中检查实例的类
- JavaScript 中的动态实例化
- JavaScript - 有没有办法动态创建对象的新实例
- 多个延迟加载实例 |Javascript
- 方法实例Javascript的创建