我想填充以json形式从服务器到UI页面的utf-8数据。
我可以看到“ jsonStr”具有utf-8数据。我已经在Eclipse中以调试模式进行了验证。
但是,当我看到json变量值时,它显示为“ ????”。
这是我使用的代码片段
<script language="JavaScript" charset="utf-8">
var json = <%=jsonStr%>
</script>
在这个问题上有人可以帮我吗?
即使是jQuery代码段也可以
最佳答案
问题可能是您的服务器没有将数据发送为utf8。我不确定您使用的是哪种服务器端语言,但这是我在PHP中所做的:
/**
* encodes a string / array values to utf8
* @param (mixed) $mixed
*/
static function utf8Encode( $mixed ) {
if( is_array( $mixed ) ) {
foreach( $mixed as $key => $value ) {
$mixed[$key] = self::utf8Encode( $value );
}
} else {
if( !mb_check_encoding( $mixed, 'UTF-8') ) {
$mixed = utf8_encode( $mixed );
}
}
return $mixed;
}