javascript - jQuery 查找和替换文本

标签 javascript jquery

我有一个文本包含在 <textarea> 上像这样:

Hi {nom},

We are glad to accept your invitation.

我需要它成为

Hi Dolly Parton,

We are glad to accept your invitation.

我不想使用任何插件,但我尝试开发这个简单的功能,但没有得到积极的结果:

prevContent=$('textarea').val(); //alerts correctly textarea content
content = prevContent.replace('{nom}','Dolly Parton');

在这种情况下,不会进行替换,内容的值与 prevContent 相同。

这并不是要进行实时替换,必须在提交表单之前进行替换:

 $(document).on('click','.submitMessage', function(){
        prevContent=$('textarea').val();    
        content = prevContent.replace('{nom}','Dolly Parton');

        $.post('../actions/newMessage.php',{ms_content:content}).success(

                    function(data){
                        alert("yikes");}
   );}
});

已解决:这是由于变量拼写错误造成的。它的发送方式类似于 {nom1},而不是 {nom}。很抱歉给您带来不便。

最佳答案

您需要将 RegExpg 一起使用标志,因为在您的示例中只有第一个 {nom} 将被替换:

var prevContent = $('textarea').val();
var content     = prevContent.replace(/\{nom\}/g, 'Dolly Parton');

要更新textarea,您可以使用.val,就像这样

$('textarea').val(content);

Example

关于javascript - jQuery 查找和替换文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30096909/

相关文章:

javascript - 如何在 dijit 菜单上放置垂直滚动条

Javascript .replace() 在 Chrome 中全局不起作用

javascript - jQuery 计算从 0 到 div 的数字

javascript - 如何在vue js中为组件添加基本动画

javascript - 用户通过表单提交关键词;如何获取要在页面中修改的搜索 URL 的 'keyword' 部分?

javascript - 具有依赖关系的多个调用 redux-thunk

jquery click 事件的 Javascript 变量范围问题

javascript - 使用 ASP 通用处理程序上传 ajax 文件后防止刷新

asp.net - 你如何拉伸(stretch)背景图像

javascript - 复选框自动检查