在JavaScript中通过URL传递汉字的方法

作者: 网络应用  发布:2019-09-22

应用JavaScript通过U索罗德L方式向后台代码传值是一种经常利用的手法,但在传递汉字时平时会油可是生字符不全或成为乱码的标题,其原因是由于客商端IE浏览器的编码形式为GB2312(简体普通话版WINDOWS的暗中认可设置),而后台的C#代码应用utf8编码(创制WEB工程的私下认可配置)。
互连网有那二个方案解决该难题,如将web.config的编码方式改为GB2312、在客商端通过escape先编码再传,个心体会都不是很非凡或稍微特殊字符不帮助。经过比不大编决定选择encodeU奥迪Q3IComponent在顾客端举行编码,再传值,除了“/”不辅助(但骨子里付出中相当少需求传递该值,若是真有此请况,再加一层判别就能够。
encodeUENCOREIComponent的增加援救文档如下:
encodeURIComponent 方法
将文本字符串编码为三个合併财富标志符 (UCRUISERI) 的贰个卓有功用组件。
encodeURIComponent( encodedURIString ) 
必选的 encodedU奥迪Q5IString 参数代表多少个已编码的 U宝马X3I 组件。
说明
encodeUCR-VIComponent 方法再次来到一个已编码的 UPAJEROI。倘诺您将编码结果传递给 decodeULANDIComponent ,那么将赶回初叶的字符串。因为encodeU瑞鹰IComponent 方法对负有的字符编码,请小心,借使该字符串代表一个路子,比方 /folder1/folder2/default.html ,当中的斜杠也将被编码。那样一来,当该编码结果被用作央求发送到 web 服务器时将是行不通的。假若字符串中蕴涵不仅仅八个 U奥迪Q5I 组件,请使用 encodeU大切诺基I 方法进行编码。
要求
版本 5.5
请参阅
decodeURI 方法 | decodeURIComponent 方法
应用于: Global 对象

小编做了一个小例子来显现该意义  
Default.aspx代码:

复制代码 代码如下:

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; 
<html xmlns="" > 
<head runat="server"> 
    <title>无标题页</title> 
</head> 
<script type="text/javascript" language="javascript"> 
    function callURL(Value1, Value2) 
    { 
        document.URL = "Default.aspx?Value1=" + encodeURIComponent(Value1) + "&Value2=" + encodeURIComponent(Value2); 
    } 
</script> 
<body> 
    <form id="form1" runat="server"> 
    <div> 
        Value1=<input id="Text1" type="text" value="1234567890"/><br /> 
        Value2=<input id="Text2" type="text" value="中国"/> 
        <br /> 
        <input id="Button1" type="button" value="提交" onclick="callURL(Text1.value, Text2.value)"/></div> 
    </form> 
</body> 
</html> 

Default.aspx.cs代码:

复制代码 代码如下:

using System; 
using System.Data; 
using System.Configuration; 
using System.Web; 
using System.Web.Security; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Web.UI.WebControls.WebParts; 
using System.Web.UI.HtmlControls; 
public partial class _Default : System.Web.UI.Page  

    protected void Page_Load(object sender, EventArgs e) 
    { 
        string tmpValue1 = ""; 
        string tmpValue2 = ""; 
        if (Request.QueryString["Value1"] != null) 
        { 
            tmpValue1 = Request.QueryString["Value1"].ToString(); 
        } 
        if (Request.QueryString["Value2"] != null) 
        { 
            tmpValue2 = Request.QueryString["Value2"].ToString(); 
        } 
        Response.Write("Value1=" + tmpValue1 + "<br />" + "Value2="  + tmpValue2); 
    } 
}

您或者感兴趣的小说:

  • javascript达成汉字转拼音代码分享
  • javascript限制顾客只可以输汉字中文的措施
  • javascript正则相配汉字、数字、字母、下划线
  • javascript下汉字和Unicode编码互转代码
  • javascript 汉字转拼音实今世码
  • Javascript 汉字字节判别
  • JavaScript 给汉字排序实例代码
  • 用javascript完成的方块字简繁转换
  • javascript 汉字与拼音调换
  • javascript汉字转拼音的代码
  • JavaScript落到实处ASC转汉字及汉字转ASC的主意

本文由王中王开奖结果发布于网络应用,转载请注明出处:在JavaScript中通过URL传递汉字的方法

关键词:

上一篇:filemanage效能中用到的common
下一篇:没有了