首 页WAP教程WAP源码WAP电子书客户留言龙腾电脑维修网158网络电视本站论坛繁體中文
设为首页
加入收藏
联系我们
您当前的位置:WAP开发网 -> WAP教程 -> 综合杂谈 -> 文章内容 退出登录 用户管理
栏目导航
· ASP WAP开发教程 · ASP.net WAP开发教程
· PHP WAP开发教程 · WML教程
· JSP开发WAP教程 · WAP 2.0
· 综合杂谈
热门文章
· WAP 2.0教程
· WML语言基础(WAP建站...
· 用VS2005实现ASP.NE...
· [组图] php WAp开发教程
· WML语言基础(WAP建站...
· VS.NET 2003开发移动...
· [图文] ASP技术进行动态WAP...
· [图文] WML语言基础(WAP建站...
· asp.net移动控件开发...
· [图文] 创建移动Web应用程序...
相关文章
· WAP中文字符传递 PH...
· jsp处理wap中文乱码...
· WAP中文字符传递 PH...
WAP中文提交乱码问题解决办法
作者:不详  来源:本站整理  发布时间:2006-8-30 11:46:33  发布人:tangyunfei

减小字体 增大字体


示例1:文件以普通ansi编码方式保存

<%@LANGUAGE="JAVASCRIPT" CODEPAGE="936"%>
<% Response.ContentType="text/vnd.wap.wml" %>

<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">

<wml>
<head>
 
 
 
</head>

<%
var description=Request("description");
%>

<card>
<br>
  测试:(<%=description%>)<br/>
  <input>
  <a href="test.asp?description=$(description:e)">提交..</a><br/>
</p>
</card>

</wml>


输入: 中文测试
结果显示: 涓枃娴嬭瘯
结果分析:字符变成UTF-8编码,需要重新做utf-8 => gb2312的转换处理


===================================================

示例2:文件以普通ansi编码方式保存

<%@LANGUAGE="JAVASCRIPT" CODEPAGE="936"%>
<% Response.ContentType="text/vnd.wap.wml" %>

<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">

<wml>
<head>
 
 
 
</head>

<%
var description=Request("description");
%>

<card>
<p>
  测试:(<%=description%>)<br/>
  <input>
  <anchor>提交..<go href="test.asp"><postfield></go></anchor><br/>
</p>
</card>

</wml>


输入: 中文测试
结果显示: %e4%b8%ad%e6%96%87%e6%b5%8b%e8%af%95
结果分析:这是对字符进行了encodeURI编码,只需要执行js方法decodeURI即可

注:以上示例表明用queryString和post还是有所区别的


==================================================



示例3:文件以UTF-8编码方式保存

<%@LANGUAGE="JAVASCRIPT" CODEPAGE="936"%>
<% Response.ContentType="text/vnd.wap.wml" %>

<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">

<wml>
<head>
 
 
 
</head>

<%
var description=Request("description");
%>

<card>
<p>
  测试:(<%=description%>)<br/>
  <input>
  <a href="test.asp?description=$(description:e)&operate=guestbook_save">提交..</a><br/>
</p>
</card>

</wml>


输入:中文测试
结果显示:中文测试
结果分析:因为文件用utf-8编码方式保存,所以接收端直接获得了UTF-8的字符


=================================================

示例4:

<%@LANGUAGE="JAVASCRIPT" CODEPAGE="936"%>
<% Response.ContentType="text/vnd.wap.wml" %>

<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">

<wml>
<head>
 
 
 
</head>

<%
var description=Request("description");
%>

<card>
<p>
  测试:(<%=description%>)<br/>
  <input>
  <anchor>提交..<go href="test.asp"><postfield></go></anchor><br/>
</p>
</card>

</wml>


输入:中文测试
结果显示:%e4%b8%ad%e6%96%87%e6%b5%8b%e8%af%95
结果分析:因为提交时设置了进行escape转换,所以不受文件编码方式的影响

可是用anchor+go的方法写实在是有点浪费,a简洁的多,也更节省WML的字节数,那么就可以试试以下方法,文件以普通ansi编码方式保存

<%@LANGUAGE="JAVASCRIPT" CODEPAGE="936"%>
<% Response.ContentType="text/vnd.wap.wml" %>

<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">

<wml>
<head>
 
 
 
</head>

<template>
<do type="prev" label="返回">
  <go href="#nav"/>
</do>
</template>

<%
function unicode2gb(str,oldCharset,newCharset){
  var stream=new ActiveXObject("ADODB.Stream")
  stream.type=2
  stream.Mode=0
  stream.Open()
  stream.Charset=newCharset
  stream.WriteText(str)
  stream.Position= 0
  stream.Type= 2
  stream.Charset=oldCharset
  var s=stream.ReadText()
  stream.Close()
  return s;
}
var t=new Date();
var description=String(Request("description"));

description=unicode2gb(description,"utf-8","gb2312");
%>

<card>
<p>
  测试:(<%=description%>)<br/>
  <input>
  <a href="test.asp?description=$(description:e)&operate=guestbook_save">提交..</a><br/>
</p>
</card>

</wml>


输入:中文测试
结果显示:中文测试

或者你想用utf-8编码方式保存文件,那就这样

<%@LANGUAGE="JAVASCRIPT" CODEPAGE="936"%>
<% Response.ContentType="text/vnd.wap.wml" %>

<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">

<wml>
<head>
 
 
 
</head>

<template>
<do>
  <go href="#nav"/>
</do>
</template>

<%
function unicode2gb(str,oldCharset,newCharset){
  var stream=new ActiveXObject("ADODB.Stream")
  stream.type=2
  stream.Mode=0
  stream.Open()
  stream.Charset=newCharset
  stream.WriteText(str)
  stream.Position= 0
  stream.Type= 2
  stream.Charset=oldCharset
  var s=stream.ReadText()
  stream.Close()
  return s;
}
var t=new Date();
var description=String(Request("description"));

description=unicode2gb(description,"utf-8","gb2312");

description=description.replace(/[^\u0000-\u00FF]/g,function($0){return escape($0).replace(/(%u)(\w{4})/gi,"&#x$2;")});
%>

<card>
<p>
  测试:(<%=description%>)<br/>
  <input>
  <a href="test.asp?description=$(description:e)&operate=guestbook_save">提交..</a><br/>
</p>
</card>

</wml>


输入:中文测试
结果显示:中文测试
[] [返回上一页] [打 印] [收 藏]
下一篇文章:简介WAP最新版本WAP2.0
∷相关文章评论∷    (评论内容只代表网友观点,与本站立场无关!) [更多评论...]
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 管理登录
Copyright © 2002-2005 wapkf.com. All Rights Reserved .
浙ICP备06013604号|站长QQ:274273595