解决方案 »

  1.   

    用 JSON.NET var obj = new {
        name = @"\abc\"
    };
    hd.Value = JsonConvert.SerializeObject(obj);var json = document.getElementById("hd").value;
    alert(JSON.parse(json).name); // result : \abc\
      

  2.   

    谁知道你前端一定还要parse一次?
      

  3.   


    前端不parse一次的话,json字符串怎么用?
      

  4.   

    比如你用JQuery的AJAX,设置datatype为json,不用转义就可以了
      

  5.   

    $.ajax({              
                type: "post", //要用post方式                 
                url: "Demo.aspx/SayHello",//方法所在页面和方法名
                contentType: "application/json; charset=utf-8",     
                dataType: "json",     
                success: function(data) {                    
                    alert(data.d);//返回的数据用data.d获取内容
                },
                error: function(err) {     
                    alert(err);     
                }     
            });
    你在后生成好json格式。然后返回前台,直接处理解析就行。
    http://www.cnblogs.com/Benjamin/archive/2013/09/11/3314576.html
    http://www.cnblogs.com/fanyong/p/3463701.html
      

  6.   

    可以是可以,关键是接收数据的时候,后台是几个"\",前台就会接收到几个"\",直接存到会回调函数的参数里,自然就不用我动手去多做一些处理了。而我用'<%=this.jsonString%>'这种写法把字符串存到变量里,就会多一次转义。真不知道ajax是怎么把字符串存到那个变量里的。