我有基于 id 属性的工作脚本。由于我有很多问题,决定将 class 属性与 jQuery 一起使用。但是我没有成功使用以下脚本(我不擅长编写脚本 :( )
如果您的专家能建议我更好的方法,那就太好了。我有 300 多个单词要用符号替换(大约 200 页)。
非常感谢。
HTML代码
<script src="http://code.jquery.com/jquery-latest.js"></script>
<input type="submit" name="replace" id="replace" value="Replace" />
<div class="my_div">Default content</div>
<div class="my_div">Default content 2</div>
Java 脚本
$('#replace').click(function() {
var str=document.getElementByClassName("my_div").innerHTML;
var n=str.replace("default","somesymbol");
var n=str.replace("content","somesymbol");
var n=str.replace("im","somesymbol");
document.getElementByClassName("my_div").innerHTML=n;
}
最佳答案
改用这样的东西:
$('#replace').click(function() {
$('.my_div').each(function() {
var $this = $(this);
var html = $this.html();
$this.html(html.replace(/default|content|im/gi, 'somesymbol'));
});
});
getElementByClassName
应该是 getElement<b>s</b>ByClassName
,它返回一个 NodeList
你必须迭代。
此外,如果您不需要在替换中保留格式(如 foo <b>bar</b>
),请使用 .text()
而不是 .html()
.
关于javascript - jQuery 重现替换 innerHTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13104563/