Razor 将C#对象转换成Javascript对象, json还原被转码的字符 "·· HTML转义符
Razor 将C#对象转换成Javascript对象
在Razor中使用Json字符串,特殊字符被自动转义(如:\"->")
@{
var jsonStr = Html.Raw(JsonUtil.ToJson(VieBag.data));
}
<script>
var data = JSON.parse(@jsonStr);
</script>
ViewBag.Data = list;
<script type="text/javascript">
//将数据对象转换为 JSON 格式,是为了在网页中通过使用JS将数据作为文本进行处理
var data = @Html.Raw(Json.Encode(ViewBag.Data));
for (var i = ; i < data.length; i++) {
var model=data[i];
console.log("编号:"+model.id+" 姓名:"+model.name+" 性别:"+model.sex);
}
</script>
var c = document.createElement('div');
c.innerHTML = '@strData';
var arrData = JSON.parse(c.innerText);
在JS中还原被转码的字符
<script type="text/javascript">
var a = 'h hello<world>!!!<script>alert(1)</script>'
alert(a);
var c = document.createElement('div');
c.innerHTML = a;
a = c.innerText || c.textContent;
c = null;
alert(a);
</script>
//去掉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':'<','gt':'>','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,"<br />");
}
//去除开头结尾换行,并将连续3次以上换行转换成2次换行 function trimBr(str) {
str=str.replace(/((\s| )*\r?\n){,}/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;
}
//去掉html标签
1
2
3
|
function removeHtmlTab(tab) { return tab.replace(/<[^<>]+?>/g, '' ); //删除所有HTML标签 } |
//普通字符转换成转意符
1
2
3
|
function html2Escape(sHtml) { return sHtml.replace(/[<>& "]/g,function(c){return {'<':'<','>':'>','&':'&','" ': '"' }[c];}); } |
//转意符换成普通字符
1
2
3
4
|
function escape2Html(str) { var arrEntities={ 'lt' : '<' , 'gt' : '>' , 'nbsp' : ' ' , 'amp' : '&' , 'quot' : '"' }; return str.replace(/&(lt|gt|nbsp|amp|quot);/ig, function (all,t){ return arrEntities[t];}); } |
// 转成空格
1
2
3
4
|
function nbsp2Space(str) { var arrEntities = { 'nbsp' : ' ' }; return str.replace(/&(nbsp);/ig, function (all, t){ return arrEntities[t]}) } |
//回车转为br标签
1
2
3
|
function return2Br(str) { return str.replace(/\r?\n/g, "<br />" ); } |
//去除开头结尾换行,并将连续3次以上换行转换成2次换行
1
2
3
4
5
6
|
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; } |
// 将多个连续空格合并成一个空格
1
2
3
4
|
function mergeSpace(str) { str=str.replace(/(\s| )+/g, ' ' ); return str; } |
Razor 将C#对象转换成Javascript对象, json还原被转码的字符 "·· HTML转义符的更多相关文章
- Java对象转换成xml对象和Java对象转换成JSON对象
1.把Java对象转换成JSON对象 apache提供的json-lib小工具,它可以方便的使用Java语言来创建JSON字符串.也可以把JavaBean转换成JSON字符串. json-lib的核心 ...
- json字符串转json对象,json对象转换成java对象
@RequestMapping(value = "updateInvestorApplyAccountNo", method = RequestMethod.POST) @Resp ...
- json字符串转成 json对象 json对象转换成java对象
import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSONObject; 依赖包 <dependency> ...
- 如何将JQUERY对象转成Javascript对象
问: <div id="test"></div> $("#test") //由Javascript对象转为Jquery对象: 但是如何转 ...
- 把json格式的字符串转换成javascript对象或数组
第一种 JSON.parse(jsonString) 第二种 eval("("+jsonString+")") 第三种 var obj=(function ...
- django QuerySet对象转换成字典对象
>>> from django.contrib.auth.models import User >>> from django.forms.models impor ...
- Array.prototype.slice.call()等几种将arguments对象转换成数组对象的方法
网站搬迁,给你带来的不便敬请谅解! http://www.suanliutudousi.com/2017/10/10/array-prototype-slice-call%E7%AD%89%E5%87 ...
- json字符串转换成json对象,json对象转换成字符串,值转换成字符串,字符串转成值
一.json相关概念 json,全称为javascript object notation,是一种轻量级的数据交互格式.采用完全独立于语言的文本格式,是一种理想的数据交换格式. 同时,json是jav ...
- python class对象转换成json/字典
# -*- encoding: UTF-8 -*- class Student: name = '' age = 0 def __init__(self, name, age): self.name ...
随机推荐
- BZOJ3638|CodeForces 280D k-Maximum Subsequence Sum
题目链接:戳我 一类典型模型.线段树模拟网络流+区间最大K段和. 因为不会写,所以参考了黄学长的博客.但是我觉得他说得不够详细,所以想好好地解释一下: 前置技能1:区间最大子段和 如果K=1的时候怎么 ...
- OI树上问题 简单学习笔记
判断链 每个点的度数不超过2 判断树 n个点,n-1条边 每两个点之间的路径唯一 多叉树转换成二叉树 第一个孩子作为左孩子,第一个孩子的兄弟作为它的右孩子. 树的重心 树上一点,满足删除该点时,树内剩 ...
- Angularjs和Ionic框架搭建webApp
本文原创版权归 简书作者 噜啦啦噜啦啦噜啦噜啦噜 所有,转载请联系作者获得授权,并于文章开头标注原创作者及出处,以示尊重! 文/噜啦啦噜啦啦噜啦噜啦噜(简书作者)原文链接:http://www.jia ...
- UIEvent笔记
UIEvent是什么 代表iOS系统中的一个事件. UIEvent分为三类,touch events, motion events, and remote-control events touch e ...
- Codeforces - tag::data structures 大合集 [占坑 25 / 0x3f3f3f3f]
371D 小盘子不断嵌套与大盘子,最后与地面相连,往里面灌水,溢出部分会往下面流,求每次操作时当前的盘子的容量 其实这道题是期末考前就做好了的.. 链式结构考虑并查集,然后没了(求大佬解释第一个T的点 ...
- Jmeter实例
我们在性能测试过程中,首先应该去设计测试场景,模拟真实业务发生的情境,然后针对这些场景去设计测试脚本.为了暴露出性能问题,要尽可能的去模拟被测对象可能存在瓶颈的测试场景. 我在本地部署了一个项目,可以 ...
- oracle12c之四 控制PDB操作 PDBLockdown Profiles
除了IO.内存.CPU之外,还有一些限制,比如:限制在pdb中的操作命令,我们可以创建一个lockdown profile来限制对当前PDB的操作,增强某些操作的安全性. 关于PDB Lockdo ...
- Python的html解析器
转自https://blog.csdn.net/jqh2002_blog/article/details/24842217 其实比较不同的解析器对html的处理能力是有点麻烦的,因为它们处理的步骤并不 ...
- D3.js绘制平行坐标图
参照:https://syntagmatic.github.io/parallel-coordinates/ 和 https://github.com/syntagmatic/parallel-coo ...
- Html checkbox全选
html中全选 <table class="data-table td-center"> <tr> <td><input type=&qu ...