输入上的££[type = text]

时间:2012-03-14 14:11:54

标签: javascript jquery encoding character-encoding

我有一些jQuery在input[type=text]上设置值,如下所示:

if(theVal=="EPC/Floorplan"){
    $('#s3').val("£100.00").attr("disabled","disabled");
    $('.priceUpdate button').hide();
}else if(theVal=="EPC"){
    $('#s3').val("£75.00").attr("disabled","disabled");
    $('.priceUpdate button').hide();
}else{
    $('#s3').val("£0.00").removeAttr("disabled");
    $('.priceUpdate button').show();
}

然而,输入看起来像这样:

Input with £

我还有以下元标记:

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

Here's the site in question. Click any option on the dropdown

3 个答案:

答案 0 :(得分:2)

尝试将charset属性添加到包含的脚本中:

<script src="custom.js" type="text/javascript" charset="utf-8"></script>

答案 1 :(得分:1)

使用unicode:

\u00A3

在你的例子中:

if(theVal=="EPC/Floorplan"){
    $('#s3').val("\u00A3" + "100.00").attr("disabled","disabled");
    $('.priceUpdate button').hide();
}else if(theVal=="EPC"){
    $('#s3').val("\u00A3" + "75.00").attr("disabled","disabled");
    $('.priceUpdate button').hide();
}else{
    $('#s3').val("\u00A3" + "0.00").removeAttr("disabled");
    $('.priceUpdate button').show();
}

答案 2 :(得分:1)

您的服务器已提供Content-Type标头,其编码设置为ISO-8859-1。如果服务器本身不提供该标头,浏览器将仅考虑您的<meta>元素。

以下是Firebug追踪的相关部分:

HTTP/1.1 200 OK
Date: Wed, 14 Mar 2012 14:19:16 GMT
Server: Apache/2.2.3 (Red Hat)
X-Powered-By: PHP/5.2.17
Content-Type: text/html; charset=ISO-8859-1

尝试配置服务器(或服务器端代码),以便设置UTF-8内容编码。