1. 首页 > 数码 >

jsunicode转中文 js中文转utf8

struts2化在js里面怎么使用

Iterator it = keys.iterator();

一、struts2化比较简单,过程如下:

jsunicode转中文 js中文转utf8jsunicode转中文 js中文转utf8


大写英文字母unicode范围为0x41-0x5a,小写英文字母范围为:0x61-0x7a

1. 建立资源文件

中文资源:language_zh_CN.properties (language-自定义名称,zh-中文,CN-)

英文资源:language_en_US.properties (language保持一致,en-英文,US-美国)

其中中文在MyEclipse环境下,用Properties进行编辑,直接输入中文

如:password 密码

那么从Source看时,就可看到中文是用Unicode表示的

如:password=\u5BC6\u7801

2. 配置

web.xml文件中,配置Struts2:

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

<-pattern>/

3. jsp中使用资源

加入标签引用:<%@ taglib prefix="s" uri="/struts-tags" %>

或者表单元素用:key="password"

4. 在action中使用资源

用ActionSupport类中的方法取资源值:getText("password");

二、js中要获取以上的资源值,就比较麻烦了

单独建立一套资源的话,就需要维护两套资源,重复且维护麻烦

1. js中使用量较少时,可在jsp页面中定义变量先取出资源值

用js代码如:var curPassword='';

或:var curLang = {

password : '',

user : ''

}那单独的js文件中就可直接使用了

2. 另外想到的是从Ja资源中全部取出,在js中再建立一个语言的对象

ja化,用到的有两个类:Locale、ResourceBundle

Locale是语言类,选定当前的语言与地域,如:Locale locale = new Locale("zh","CN");

ResourceBundle是资源类,加载的是资源

如:ResourceBundle bundle = new ResourceBundle.getBundle("language",locale);

有个方法可取键值:bundle.getString("password");

找到一个方法可取全部键名:Set keys=bundle.keySet();

好,再看Struts2中如何取ResourceBundle对象:

ActionSupport类中方法:ResourceBundle bundle=getTexts("langauge");

Action中添加方法:

protected String getCurLang(String resourceName){

if(null != bundle){

Set keys=bundle.keySet();

StringBuffer curLang = new StringBuffer();

curLang.append("{");

int id=0;

String key;

while(it.hasNext()){

key=it.next();

if(id>0){

curLang.append(",");

}curLang.append(key);

curLang.append(":\'");

curLang.append("\'");

return curLang.toString();

}return "";

,前台把它转为对象,如:

var strvar curLang="<%=session.getAttribute("curLang")%>";

那么js文件中就可直接使用了:curLang["password"];

JaScript如何对后台utf8编码的字符串解码?

4.编辑完成后,单击ue编辑器中的Se并选择不带BOM的UTF8。

为了防止xss以及csrf+xss的漏洞,后台统一对字符串进行了转码

}然后放入session中:session.setAttribute("curLang",getCurLang("langauge"));

结果如下:

原文: JaScript高级程序设计

编码: JaScript高级程序设计

前端写了一段如下代码:

function u2str(text){ // transform text in utf8 format to string

return unescape(text.replace(/&#/g,'%u').

var ascVal = 98;

var charVal = "G";

document.write(vbAsc(charVal));

jascript中只有Unicode转换没有ascii码转换,所以要用vbscript中的代码来实现...加了这段代码后,在页面中有脚本的地方都写清楚脚本语言,否则可能会出现错误。

String.fromCharCode(64)

String.charstruts化,是建立在ja化之上,做了一次封装CodeAt(0)

js判断字符是否是汉字的两种方法小结

/[^\u4E00-\u9FA5\uf900-\ufa2注意 escape 方法不能够用来对统一资源标示码 (URI) 进行汉字在Unicode中称作CJK 统一表意符号 (CJK Unified Ideographs),包括U+3400-U+4DBF/U+4E00-U+9FFF/U+20000-U+3FFFD,参见百度百科【统一码】。编码。对其编码应使用 encodeURI 和encodeURIComponent 方法。d]+/g:非中文

js验证不能输入汉字怎么解决?

可以使用原生的Jascript代码来进行转义。该编码其实不是utf8,而是unicode编码。这里的字符实际上'返过来是html实体。

1、用正则表达式判断,非常简单,两条代码就可实现,具体如下: