我想填充以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;
}

09-27 03:58