我希望使用 JavaScript 动态替换一些占位符文本。尝试使用 jquery 过滤器和包含选择器,但没有真正取得任何进展。您知道如何替换它们吗?
<div class="container">
<h1>$$Insert text here$$</h1>
<div>
<p>My first paragraph.</p>
<div>$$Insert text here$$</div>
<div>
<input type="text" name="lname" placeholder="$$Insert text here$$"><br>
<p>Here some other text</p>
</div>
</div>
最佳答案
一个简单的例子,假设您只有一种用于研究目的的占位符:
var container = $('.container');
container.html(container.html().replace(/\$\$Insert text here\$\$/g,'mytext'))
演示:http://jsfiddle.net/Pqpfa/2/
<小时/>如果您尝试实现自己的模板引擎,这里有一个更复杂的示例,您可以在其中使用不同的占位符名称:
html:
<div class="container">
<h1>$$pageTitle$$</h1>
<div>
<p>My first paragraph.</p>
<div>$$inputName$$</div>
<div>
<input type="text" name="lname" placeholder="please enter $$inputName$$"><br>
<p>Here some other text</p>
</div>
</div>
js:
var myClass = {};
myClass.pageTitle = 'my awsome page title';
myClass.inputName = 'your name';
var replaceFunc = function(match,p1){
if (myClass[p1]){
return myClass[p1]
}
}
var container = $('.container');
container.html(container.html().replace(/\$\$(.*)\$\$/g, replaceFunc))
关于javascript - 使用javascript一一替换字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20155091/