当前位置: 首页 > news >正文

js java 转 html code

将字符串(中文 英文) 转换成 html code (&#..)的格式..

把(握 )这样的编码放入页面,用浏览器打开后就可以直接看到 文字 或 字符 

这样是不是可以解决 js生成动态html 代码中标签中 title 显示出现 单引号或双引号 特殊字符

var htmlEncode=function(str) {//HTML des encode.

    var res=[];    for(var i=0;i < str.length;i++)        res[i]=str.charCodeAt(i);    return "&#"+res.join(";&#")+";";

};

如果关于java 中的转码的话

org.apache.commons.lang.StringEscapeUtils 

这是类是个不错的选择,要是标签中有就好..标签也是人写的,要是能写一个就方便了。

---------------------------------------------------------------------------------------------参考自

http://blog.csdn.net/authorzhh/article/details/6742839

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <title> New Document </title>
  <meta name="Generator" content="EditPlus">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
 </head>
 <script type="text/javascript">
 
/*
 *js HTML Encode
 */ 
var htmlEncode=function(str) {//HTML des encode.
    var res=[];
    for(var i=0;i < str.length;i++)
        res[i]=str.charCodeAt(i);
    return "&#"+res.join(";&#")+";";
};
 
var htmlEncode2=function(s) {
    var r = "", c;
    for (var i = 0; i < s.length; i++) {
        c = s.charCodeAt(i);
        r += (c < 32 || c == 38 || c > 127) ? ("&#" + c + ";") : s.charAt(i);
    }
    return r;
};
 
//s.replace(/([\u4e00-\u9fa5]+)/g,function($,$1) {
//    return htmlEncode($1);
//})
var htmlHexEncode=function(str) {//HTML hex encode.
    var res=[];
    for(var i=0;i < str.length;i++)
        res[i]=str.charCodeAt(i).toString(16);
    return "&#"+String.fromCharCode(0x78)+res.join(";&#"+String.fromCharCode(0x78))+";";//x ,防止ff下&#x 转义
};
 
var htmlDecode = function(str) {
    return str.replace(/&#(x)?([^&]{1,5});?/g,function($,$1,$2) {
        return String.fromCharCode(parseInt($2 , $1 ? 16:10));
    });
};
 
var s="htmlEncode HTML 编码转换 &#";
var s1=htmlEncode(s)+"\n\n只对双字节和&编码:"+htmlEncode2(s);
var s2=htmlDecode(s1);
alert("编码前:"+s+"\n\n编码后:"+s1+"\n\n解码后:"+s2);
 
var s="htmlHexEncode HTML 编码转换&#";
var s1=htmlHexEncode(s);
var s2=htmlDecode(s1);
alert("编码前:"+s+"\n\n编码后:"+s1+"\n\n解码后:"+s2);

var msg = "米市巷街道";
 alert(msg);
 var result = htmlDecode(msg);
 alert(result);

 </script>
 <body>
  
 </body>
 </html>



相关文章:

  • eclipse + tomcat 重复加载 多工程 host
  • 编码 转码
  • eclipse-helios中Errors running builder JavaScript Validator的问题
  • SSH_Secure_Shell_ClientH工具密钥登录linux
  • linux 学习(一)---vm网络共享
  • Runtime exec 执行linux find 命令时 引号问题
  • jquery 水平滚动
  • 谷歌火狐 上传图片预显示
  • linux 学习(centos)
  • paoding-rose源码(github)转eclipse项目
  • ajax 关于zepto.js 进行jsonp请求时无法得到data中的参数数据
  • springmvc jsp 访问 (tomcat)
  • paoding-rose 框架BaseDAO
  • jetty应用服务初步使用
  • centos7 Minimal +VM VirtualBox 网络链接
  • Android 架构优化~MVP 架构改造
  • egg(89)--egg之redis的发布和订阅
  • Flex布局到底解决了什么问题
  • GraphQL学习过程应该是这样的
  • js操作时间(持续更新)
  • js作用域和this的理解
  • Nacos系列:Nacos的Java SDK使用
  • PhantomJS 安装
  • PV统计优化设计
  • yii2权限控制rbac之rule详细讲解
  • 从输入URL到页面加载发生了什么
  • 关于for循环的简单归纳
  • 基于HAProxy的高性能缓存服务器nuster
  • 基于Mobx的多页面小程序的全局共享状态管理实践
  • 利用jquery编写加法运算验证码
  • 七牛云假注销小指南
  • 前端代码风格自动化系列(二)之Commitlint
  • 深度学习中的信息论知识详解
  • 学习使用ExpressJS 4.0中的新Router
  • ​LeetCode解法汇总2696. 删除子串后的字符串最小长度
  • #if 1...#endif
  • #NOIP 2014# day.1 T2 联合权值
  • #快捷键# 大学四年我常用的软件快捷键大全,教你成为电脑高手!!
  • #我与Java虚拟机的故事#连载07:我放弃了对JVM的进一步学习
  • (1/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (c语言)strcpy函数用法
  • (Redis使用系列) Springboot 整合Redisson 实现分布式锁 七
  • (第9篇)大数据的的超级应用——数据挖掘-推荐系统
  • (免费分享)基于springboot,vue疗养中心管理系统
  • (十二)devops持续集成开发——jenkins的全局工具配置之sonar qube环境安装及配置
  • (四) Graphivz 颜色选择
  • (原創) 如何刪除Windows Live Writer留在本機的文章? (Web) (Windows Live Writer)
  • (转)大型网站的系统架构
  • ..thread“main“ com.fasterxml.jackson.databind.JsonMappingException: Jackson version is too old 2.3.1
  • .NET 4 并行(多核)“.NET研究”编程系列之二 从Task开始
  • .NET BackgroundWorker
  • .NET/C# 使窗口永不激活(No Activate 永不获得焦点)
  • .NET轻量级ORM组件Dapper葵花宝典
  • /run/containerd/containerd.sock connect: connection refused
  • @cacheable 是否缓存成功_让我们来学习学习SpringCache分布式缓存,为什么用?