使用Javascript replace()方法用html包装单词

时间:2012-06-23 01:08:34

标签: javascript jquery replace

我正在尝试使用Javascript的内置replace()方法,但由于某种原因,它不允许我在一个单词周围包装html并将其输出到textarea。

$(function() {
    $('#js-convert-markup').click(function() {
        var htmlToConvert = $('.markup_converter').val();
        htmlToConvert.replace('class', '<span class="admin_styles_type">class</span>');
        var convertedMarkup = $('.markup_converted').val(htmlToConvert);
    });
});​

http://jsfiddle.net/someprimetime/fmu5m/11/

知道为什么吗?

2 个答案:

答案 0 :(得分:2)

replace返回一个新字符串,它不会改变原始字符串。你需要这样做:

htmlToConvert = htmlToConvert.replace(...)

答案 1 :(得分:1)

尝试使用:

htmlToConvert = htmlToConvert.replace('class', '<span class="admin_styles_type">class</span>');

字符串在JavaScript中是不可变的。

http://jsfiddle.net/a26nf/