$.ajax(
        {    
            type: 'POST',
            contentType:"application/x-www-form-urlencoded:charset=utf-8",
            cache : false,/*不缓存数据*/  
            url: 'read.aspx',
            dataType: 'html', 
            timeout: 3000,
            error: function()
            {        
                
            },
            success: function(result)
            {   
                editor.setContent([color=#FF0000]decodeURIComponent(result)/color]);
            }
        }); read.aspx对utf-8的数据编码之后 传到页面 
后台是这样写得content = HttpUtility.UrlEncode(content, ncoding.UTF8);
Response.Write(content);
数据库content内容"<p style="text-align:center;"><img style="border-color:black;border-width:1px;" border="1" src="http://imga.360che.com/imga/550x366/0/106/106904.jpg" /></p>&lt;p&gt;瑞典斯堪尼亚集团首席执行官雷夫 • 奥斯汀(Leif Östling)履历,斯堪尼亚销售(中国)有限公司总经理苏博伦(Peter Sjöblom)履历&lt;/p&gt;&lt;p&gt;瑞典斯堪尼亚集团首席执行官雷夫 • 奥斯汀(Leif Östling)履历,斯堪尼亚销售(中国)有限公司总经理苏博伦(Peter Sjöblom)履历&lt;/p&gt;</p><p><br /></p>"解码用decodeURIComponent 只保留了"瑞典斯堪尼"后面的字符串
上面的图片弄丢了
请教应该怎么改?js解码

解决方案 »

  1.   

    有这种情况?你试试把UTF-8改成gb2312
      

  2.   

    contentType的utf-8?改了 没效果
      

  3.   

    后台换成Server.HtmlEncode(content);前台用 HTMLDecode解码试试。
      

  4.   

    三、JavaScript encodeURIComponent() 函数定义和用法
    encodeURIComponent() 函数可把字符串作为 URI 组件进行编码。语法
    encodeURIComponent(URIstring)
    参数 描述
    URIstring 必需。一个字符串,含有 URI 组件或其他要编码的文本。
    返回值
    URIstring 的副本,其中的某些字符将被十六进制的转义序列进行替换。说明
    该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。
    其他字符(比如 :;/?:@&=+$,# 这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的。
      

  5.   

    HttpUtility.UrlEncode这是要干嘛呢?
      

  6.   

    真的不明白这是什么问题。
    乱码是因为ContentType与字节流的编码不匹配。
    你试试alert(result);
    看看就知道了
      

  7.   

    自己解决了 留下方法吧
                Response.ContentType = "text/HTML";
                Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8");
                Response.Charset = "utf-8";