javascript - 如何用2个不同ID的innerHTML替换textarea的值

标签 javascript jquery

<p id="re">com</p>
<p id="wi">net</p>

<textarea name="sta">
www.example.com
www.test.cOm
www.mess.COM
www.example.com
www.xxxxx.org
www.xxxxxx.org
www.xxxxxx.com
</textarea>

如何将 #re 的 textarea 值替换为 #wi。 结果将是

www.example.net
www.test.net
www.mess.net
www.example.net
www.xxxxx.org
www.xxxxxx.org
www.xxxxxx.net

请注意,innerHTML 将会改变,我无法使用普通的字符串替换

textarea.replace(/com/gi, "net");

最佳答案

要实现此目的,您需要首先检索相关 div 元素的文本。然后,您可以在进行实际替换之前构建一个 RegExp 对象。试试这个:

var textarea = document.querySelector('textarea');
var match = document.getElementById('re').textContent.trim();
var replacement = document.getElementById('wi').textContent.trim();

textarea.value = textarea.value.replace(new RegExp(match, 'gi'), replacement);
<p id="re">com</p>
<p id="wi">net</p>

<textarea name="sta" rows="10">
www.example.com
www.test.cOm
www.mess.COM
www.example.com
www.xxxxx.org
www.xxxxxx.org
www.xxxxxx.com
</textarea>

关于javascript - 如何用2个不同ID的innerHTML替换textarea的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45572576/

相关文章:

javascript - 使用 JS/jQuery 从 URL 中删除哈希值

javascript - 如何更改 TOISOString 的日期格式?

javascript - 在 PhantomJS 和 Python 中伪造 Flash 插件信息

javascript - 如何使 TR/TD 在 html 中不动?

jquery - datepicker 适用于小部件选项页面,但不适用于定制器

javascript - 如何使用 javascript 回发到不同的表单

javascript - 显示我的 div 的字符串并追加

javascript - 类型错误 : d is not a function in jsPlumb

jquery - 带有 JQuery addClass 的 CSS 动画。使用 true 或 false 只运行一次

javascript - 缓存过期 header CSS 和 JS 不工作