JS实现HTML标签转义及反转义
2016-08-29 21:50
197 查看
今天我用ueditor时候遇到一个问题:
我从数据库中读取内容进行编辑的时候,不是有一些html标签嘛,从数据库读出来没有问题;
但是我用asp.net mvc,把读取出来的内容通过ueditor的api方法赋值到编辑区域的时候html标签被转义了;
比如<变为了<
我跟踪代码看后端取到的数据没有问题,返回到前端的时候html标签页都正常可以看到,但就是在js中直接被转义了,我还是不死心啊,先在后端用html编码一次,用HttpUtility.HtmlEncode方法编码一次,在Razor中再使用一次HtmlDecode,还是不能解决问题;
由此可以看出确实是浏览器端自己转义了,大概是由于各种安全原因吧;只能上网找代码了,通过js对html转义和反转义,找到了如下代码:
由此解决了问题!非常感谢这位博主的代码!
引用代码的地址:http://blog.600km.xyz/2015/12/15/js-encode-html-tags/
我从数据库中读取内容进行编辑的时候,不是有一些html标签嘛,从数据库读出来没有问题;
但是我用asp.net mvc,把读取出来的内容通过ueditor的api方法赋值到编辑区域的时候html标签被转义了;
比如<变为了<
我跟踪代码看后端取到的数据没有问题,返回到前端的时候html标签页都正常可以看到,但就是在js中直接被转义了,我还是不死心啊,先在后端用html编码一次,用HttpUtility.HtmlEncode方法编码一次,在Razor中再使用一次HtmlDecode,还是不能解决问题;
由此可以看出确实是浏览器端自己转义了,大概是由于各种安全原因吧;只能上网找代码了,通过js对html转义和反转义,找到了如下代码:
function HTMLEncode(html) { var temp = document.createElement("div"); (temp.textContent != null) ? (temp.textContent = html) : (temp.innerText = html); var output = temp.innerHTML; temp = null; return output; } function HTMLDecode(text) { var temp = document.createElement("div"); temp.innerHTML = text; var output = temp.innerText || temp.textContent; temp = null; return output; }
由此解决了问题!非常感谢这位博主的代码!
引用代码的地址:http://blog.600km.xyz/2015/12/15/js-encode-html-tags/
相关文章推荐
- JS实现HTML标签转义及反转义
- JS实现HTML标签转义及反转义
- JS实现HTML标签转义及反转义
- js 在展示关于有 html标签 时候需要转义
- html 复制标签内文本的按钮的 js 实现【学习过程】【浏览器兼容】
- java实现HTML标签转义和反转义(StringEscapeUtils)
- js简单实现HTML标签Select联动带跳转
- Angular.js数据绑定时自动转义html标签及内容
- 用JS实现HTML标签替换效果
- 用JS实现HTML标签替换效果
- 【Node.js基础篇】(六)实现如同jsp标签的HTML模板
- JS与HTML结合使用marquee标签实现无缝滚动效果代码
- window.location.href妙用 标签里用js 利用这个简单的转换思路 实现 一直也无法实现的在 页面的html标签使
- js 处理 html 标签转义 处理json中含有的ascii 编码
- JS 实现创建HTML标签及解析Json
- java web Decorator模式包装request对象实现html标签转义功能
- [js高手之路]HTML标签解释成DOM节点的实现方法
- 通过JS实现HTML的转义与反转义
- Angular.js数据绑定时自动转义html标签及内容