转义json中的特殊字符

时间:2015-12-26 18:10:00

标签: c# jquery json asp.net-mvc-3 datatables

我在mvc中构建了数据表这个数据表在渲染页面中我向它发送了100行,之后你可以通过AJAX获取数据(见更多),渲染我用json字符串发送数据

httpget操作中的代码

    viewmodelobj.str= (new System.Text.StringBuilder(Newtonsoft.Json.JsonConvert.SerializeObject(viewmodelobj.datalist)).Replace("\\r", "<br/>").Replace("\\t", "").Replace("\\\"", "&quot;").Replace("'", "&#39;").Replace("\\\\", "&#92;").Replace("\\n", "<br/>")).ToString();

我需要转义特殊字符,因为如果我发送它而不转义那些字符数据将不会显示

视野中的代码

var jsobj= JSON.parse(workqueueLoadedData);
        $('#datatableId').DataTable().rows.add(jsobj).draw();

但是当我通过ajax查看更多信息并获取数据时,我没有必要转义特殊字符,尽管我使用的代码几乎相同 通过ajax发送数据

var jsonResult = Json(new
        {
            data = lisOfWorkQueue
        }, JsonRequestBehavior.AllowGet);
        jsonResult.MaxJsonLength = int.MaxValue;

        return jsonResult;

所以你知道为什么它在没有逃避特殊字符的情况下在ajax中工作而不像get动作吗? 还有另一种方法可以在渲染步骤中将json从控制器发送到视图,而不需要转义特殊字符,提前感谢

0 个答案:

没有答案