jQuery转义特殊字符

5

以下脚本在没有特殊字符的情况下可以很好地运行。不幸的是,我需要用特殊字符来替换文本。如何在jQuery中用特殊字符替换文本?

您可以看到我的脚本中有α、β、∑等特殊字符。

感谢各位的帮助。

HTML代码

 <script src="http://code.jquery.com/jquery.js"></script>

 <input type="submit" name="replace" id="replace" value="Replace" />

 <div class="my_div">Default1 content1</div>
 <div class="my_div">Default2 content2</div>

脚本

$('#replace').click(function() {
    $('.my_div').text(function( idx, oldHtml){
        return oldHtml
            .replace("Default1", 'α')
            .replace("Default2", 'β')
            .replace("content1", '∑');
    });
});

1
如果使用转义序列,例如'\u03b1''\u03a3',而不是'α''∑',会发生什么? - Mihai
你在那段代码中遇到了什么问题? - deceze
3个回答

7

2

我知道这可能是旧问题,已经有了答案并且被采纳,但是我试图用JavaScript/jQuery更改包含特殊字符的计算值字段,却遇到了很多麻烦。无论我尝试的方法都会导致输入表单字段填充完整的转义字符串。Mihai利用“\u”这个技巧帮助我解决了这个问题。因此:

对于输入字段:

<input type="text" name="string" id="string" />

我无法做到

$('#string').value('&Phi;')

如果直接使用 &Phi ; 作为结果,将得到 '&Phi ;' 这个字符串。

但可以这样做:

$('#string').value('\u03a0')

这很显然,但我在这上面浪费了很多时间,由于一些通用查询术语的存在,这也是一个难以提问的问题。

它是有效的。


1

尝试将您的文件存储为UTF-8编码


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接