Razor 将C#对象转换成Javascript对象
在Razor中使用Json字符串,特殊字符被自动转义(如:\"->")
@{ var jsonStr = Html.Raw(JsonUtil.ToJson(VieBag.data)); }
ViewBag.Data = list;
View Code
var c = document.createElement('div'); c.innerHTML = '@strData'; var arrData = JSON.parse(c.innerText); View Code
在JS中还原被转码的字符
View Code
//去掉html标签 function removeHtmlTab(tab) { return tab.replace(/]+?>/g,'');//删除所有HTML标签 } //普通字符转换成转意符 function html2Escape(sHtml) { return sHtml.replace(/[<>&"]/g,function(c){return {'':'>','&':'&','"':'"'}[c];}); } //转意符换成普通字符 function escape2Html(str) { var arrEntities={'lt':'','nbsp':' ','amp':'&','quot':'"'}; return str.replace(/&(lt|gt|nbsp|amp|quot);/ig,function(all,t){return arrEntities[t];}); } // 转成空格 function nbsp2Space(str) { var arrEntities = {'nbsp' : ' '}; return str.replace(/&(nbsp);/ig, function(all, t){return arrEntities[t]}) } //回车转为br标签 function return2Br(str) { return str.replace(/\r?\n/g,"
"); } //去除开头结尾换行,并将连续3次以上换行转换成2次换行 function trimBr(str) { str=str.replace(/((\s| )*\r?\n){3,}/g,"\r\n\r\n");//限制最多2次换行 str=str.replace(/^((\s| )*\r?\n)+/g,'');//清除开头换行 str=str.replace(/((\s| )*\r?\n)+$/g,'');//清除结尾换行 return str; } // 将多个连续空格合并成一个空格 function mergeSpace(str) { str=str.replace(/(\s| )+/g,' '); return str; } View Code
//去掉html标签
//普通字符转换成转意符
//转意符换成普通字符
// 转成空格
//回车转为br标签
//去除开头结尾换行,并将连续3次以上换行转换成2次换行