在HTML页面中添加UTF-8扩展的位置?

Iam*_*MAN 3 html javascript java mysql character-encoding

我需要在脚本标记的末尾添加charset ="utf-8"以完成对另一种语言的翻译.

我不知道我应该在哪里添加标签.遵循任何规则.请告诉我在哪里添加字符集.我是否需要在"ApplicationLoader.js"的末尾添加或仅在jquery插件之后添加.有任何建议请.

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>My Web App</title>   

<link href="css/jquery/jquery.ui.all.css" rel="stylesheet" type="text/css" />   

<script type="text/javascript" src="js/jquery-1.4.2.min.js" charset="utf-8"></script>
<script type="text/javascript" src="js/jquery-ui-1.8.custom.min.js" charset="utf-8"></script>
<script type="text/javascript" src="js/jquery.depends.js" charset="utf-8"></script>             
<script type="text/javascript" src="myemployeelist.js" ></script>
Run Code Online (Sandbox Code Playgroud)

更新:

我会让你更容易理解我的情况细节,而不是一个更新的东西我现在正在训练的新手.据我所知,我会向你解释我的问题.

  1. 我在Eclipse中创建了一个webapplication项目,在其中我创建了一个用于JDBC连接到MySQL的类.
  2. 我在serverside中有一个类,它从我的webapp文本框中获取用户配置文件值并保存在DB中.
  3. 我正在使用jQuery插件进行从英语到阿拉伯语的翻译.
  4. 我有一个HTML页面,其中如上面的部分所述,我有标签,其中我添加了charset ="utf-8"来指定unicode.
  5. 我使用dwr获取js中的值并将其发送到服务器端.
  6. 我将计算机输入语言更改为阿拉伯语,将我的Mozilla firefox语言环境更改为阿拉伯语.

我能够在mysql中输入英文值,我能够检索它,但是当我输入阿拉伯语值时,它不会被保存.JDBC错误是

java.sql.SQLException: Incorrect string value: '\xD8\xB3\xD9\x84\xD8\xA8...'
Run Code Online (Sandbox Code Playgroud)

我不知道如何配置我的服务器Jetty 6 LANG变量utf-8.有任何建议请.谢谢.

Bal*_*usC 10

如果Content-TypeHTTP响应标头中存在标头,则会覆盖元标头.通常,此标头已默认由网络服务器提供,并且通常不存在字符集(假设客户端的默认字符集通常是ISO-8859-1).换句话说,通常只在本地(而不是HTTP)打开资源时才解释元头.这很可能是因为在通过HTTP提供服务时,您的元标题显然不起作用.

您可以使用FirebugFiddler2来确定HTTP响应标头.以下是Firebug屏幕:

替代文字

您可以在Web服务器级别配置HTTP响应标头的常规设置.您还可以在编程语言级别基于请求进行配置.由于目前还不清楚您使用的是哪种网络服务器/编程语言,因此我无法详细说明如何相应地配置它.


更新:根据问题症状,这是以下典型的MySQL异常:

java.sql.SQLException: Incorrect string value: '\xD8\xB3\xD9\x84\xD8\xA8...'
Run Code Online (Sandbox Code Playgroud)

字节序列D8 B3 D9 84 D8 A8是有效的UTF-8序列,表示那些字符???(U + 0633,U + 0644U + 0628).所以HTTP部分很好.您提到您使用Jetty 6作为servletcontainer.Jetty 6的后期版本已经支持开箱即用的UTF-8.

但是,问题出在DB部分.此异常表示已指示DB /表使用的字符集不支持此字节序列.当没有指示DB /表使用UTF-8时,可能会发生这种情况.

要修复数据库部分,请发出以下MySQL命令:

ALTER DATABASE db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE table_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
Run Code Online (Sandbox Code Playgroud)

对于未来的DB /表,也可以CHARACTER SET utf8 COLLATE utf8_general_ciCREATE语句中使用.