如何在HTML文本区域中显示以下文本?

4

我有一个字符串,如下所示。请看一下:

image

我将其作为图像放置,在这里也无法显示。如果我在此处放置该字符串,它将变成以下内容:

 21154537878887GHE\u0044\u0045

现在我的问题是:有没有办法将原始字符串放入HTML的<textarea>中而不改变编码方式?

我不确定我正确理解您的意思,您是想正确显示字符串还是按照图像提供的方式精确显示?如果您想要正确显示它,那么您从哪里获取该字符串? - Sascha Wolf
@Zeeker 是的,我想要显示成像 gedit 编辑器所展示的那样(如图所示)。 - user4007809
1
你在使用gedit时用的是哪种编码?你应该在html中使用相同的编码。它可能不是utf-8。 - Sascha Wolf
4个回答

0
尝试在包含文本区域的HTML表单元素中添加属性accept-charset="UTF-8",然后通过JavaScript解析编码值。例如:

HTML:

<form accept-charset="UTF-8">
    <textarea id="textBox"></textarea>
</form>

JavaScript:

document.getElementById("textBox").value = "21154537878887GHE\u0044\u0045";

0
<textarea name="Input" cols="36" rows="5" wrap="virtual">

你能否尝试定义wrap方法,你可以选择:

wrap: off, virtual, hard, physical, soft

文本区域的格式看起来与他们最初想要的完全不同。通常,所有文本区域的文本都会被压缩成一个单独的段落,没有原始的换行或间距。

造成这种情况的原因是CGI程序(用于处理文本框中的文本)在准备电子邮件或其他文档时必须指定MIME类型,其中许多程序选择使用MIME类型“text/html”,以便可以使用HTML格式使电子邮件或文档更具可读性。这种方法的问题在于,HTML文本区域输入框的内容需要使用MIME类型“text/plain”,否则文本区域的格式将无法正确显示在最终输出中。

<meta http-equiv="Content-Type" content="text/plain; charset=utf-8">

了解以上内容,希望这能帮助您找到解决方案。


0

我认为你必须在头部定义你的字符集。

<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>untitled</title>
<meta name="generator" content="TextMate http://macromates.com/">
<meta name="author" content="denis kohl">
<!-- Date: 2014-09-04 -->
</head>
<body>


你在所有浏览器中都有相同的效果吗? - Denis Kohl
你是如何转义特殊字符的? - Denis Kohl

0

请执行以下操作:

<textarea>2&#002;11&#001c;5&#0002;45&#001c;3&#0002;788&#0019;87&#0019;GH&#0019;E\u0044\u0045</textarea>

请注意,当此代码被渲染时,所有可以在所选(在CSS中)字体中显示的字符都会正常显示,而大多数浏览器会回退到Unicode BMP Fallback Font(http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&item_id=UnicodeBMPFallbackFont),该字体会填补您可能使用的任何字体中的空白。确切的结果将取决于浏览器。


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