将multipal {blank}文本替换为输入框

时间:2016-04-12 11:05:06

标签: jquery twitter-bootstrap

我尝试将{blank}文本替换为输入框,但它只将一个{blank}文本替换为输入框,我想将所有{blank}文本替换为输入框。以下是参考的代码

$(".editer-save .btn-primary").click(function(){
        $("#editor").each(function(){
            $this = $(this);
            $this.html($this.html().replace('{blank}','<input type="text">'));
            $('#editorPreview').show().html($('#editor').cleanHtml());
        });
    });

2 个答案:

答案 0 :(得分:0)

在字符串中使用为g标志设置全局匹配的正则表达式:

var r= '{blank}';
var re = new RegExp(r, 'g');
$this.html($this.html().replace(re, '<input type="text"/>'));

答案 1 :(得分:0)

您需要使用正则表达式而不是普通字符串。

$this.html($this.html().replace(/{blank}/g,'<input type="text">'));

这将起作用的原因是普通字符串只匹配一次,但带有全局标志的正则表达式(这就是结尾处的'g')将匹配所有实例。