如何将HTML字符串赋值给JavaScript中的变量,并轻松地从特殊字符转义

How to assigning an HTML string to a variable in JavaScript with easily escaping from special characters

本文关键字:转义 特殊字符 变量 HTML 字符串 赋值 JavaScript      更新时间:2023-09-26

我想分配一个HTML字符串到一个JavaScript变量,但它给出了错误,因为特殊字符。有什么简单的方法可以摆脱这些字符吗?

我想在我的js文件中做什么:

var messageTemplate = {
   defaultMessageTemplate : "<p>aaaa <b>_username_</b>,</p>
            <p>1sdfasşlğllğlğ.</p>
            <p><b>1 sdfsfsfü şesdfce 12 sfsf.</b></p>
            <p>Üsdfdsfsfsf üyelesfdsdfsdfmsdfdsfdava.</p>
            <p style="font-weight:bold; font-size: 16px;"><a href="/dsfsfs">sfsdfsf Yarasfsdfklayın</a></p>
        <p>Önsdfdsfpıİsdfdfsfn kaçırmayın.</p>
        <br/> <br/>fafaf, <br/>_domain_ Ekssibi</textarea></label></td>"
.... code continues here
};

escape 函数或较新的 encodeURIComponent

使用转义函数:http://www.devguru.com/technologies/ecmascript/quickref/escape.html

,但要注意,这将转义所有内容。这取决于你想如何处理变量中的html

您需要使用'":

转义用"括起来的字符串中的"
var messageTemplate = {
   defaultMessageTemplate : "<p>aaaa <b>_username_</b>,</p>
            <p>1sdfasşlğllğlğ.</p>
            <p><b>1 sdfsfsfü şesdfce 12 sfsf.</b></p>
            <p>Üsdfdsfsfsf üyelesfdsdfsdfmsdfdsfdava.</p>
            <p style='"font-weight:bold; font-size: 16px;'"><a href='"/dsfsfs'">sfsdfsf Yarasfsdfklayın</a></p>
        <p>Önsdfdsfpıİsdfdfsfn kaçırmayın.</p>
        <br/> <br/>fafaf, <br/>_domain_ Ekssibi</textarea></label></td>"
};

或者在可以使用"而不转义的地方使用单引号(但您需要转义'):

var messageTemplate = {
   defaultMessageTemplate : '…'
};

如果此JavaScript代码嵌入到HTML中,您还需要以某种方式转义</