如何在 JavaScript 中将 HTML 字符串分配给变量并轻松转义特殊字符

发布于 2024-11-01 21:57:41 字数 753 浏览 0 评论 0原文

我想将 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
};

I want to assign an HTML string to a JavaScript variable but it gives error because of special characters. Is there any easy way to escape that characters?

What I want to do at my js file:

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
};

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

_失温 2024-11-08 21:57:41

转义 函数或较新的 encodeURIComponent

The escape function or the newer encodeURIComponent.

甜妞爱困 2024-11-08 21:57:41

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

但请注意,这会逃避一切。这取决于您想对变量中的 html 执行什么操作。

use the escape function:
http://www.devguru.com/technologies/ecmascript/quickref/escape.html

but be warned that this escapes everything. It depends on what you want to do with that html in the variable.

云淡月浅 2024-11-08 21:57:41

您需要使用 \" 对用 " 引用的字符串内的 " 进行转义:

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> 而不转义它们(但您需要转义 '):

var messageTemplate = {
   defaultMessageTemplate : '…'
};

如果此 JavaScript 代码嵌入到 HTML 中,您还 需要转义 不知何故

You need to escape the " inside the string quoted with " using \":

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>"
};

Or use single quotes where you can use " without escaping them (but you would need to escape '):

var messageTemplate = {
   defaultMessageTemplate : '…'
};

And if this JavaScript code is embedded into HTML, you also need to escape the </ somehow.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文