国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > JS > 正文

在JavaScript中通過URL傳遞漢字的方法

2024-09-06 12:42:38
字體:
來源:轉載
供稿:網友
利用JavaScript通過URL方式向后臺代碼傳值是一種經常用到的手段,但在傳遞漢字時經常會出現字符不全或變成亂碼的問題,其原因是由于客戶端IE瀏覽器的編碼方式為GB2312(簡體中文版WINDOWS的默認設置),而后臺的C#代碼使用utf8編碼(創建WEB工程的默認配置)。
網上有很多方案解決該問題,如將web.config的編碼方式改為GB2312、在客戶端通過escape先編碼再傳,個心體會都不是很理想或有些特殊字符不支持。經過比較我決定使用encodeURIComponent在客戶端進行編碼,再傳值,除了“/”不支持(但實際開發中很少需要傳遞該值,如果真有此請況,再加一層判斷即可。
encodeURIComponent的幫助文檔如下:
encodeURIComponent 方法
將文本字符串編碼為一個統一資源標識符 (URI) 的一個有效組件。
encodeURIComponent( encodedURIString ) 
必選的 encodedURIString 參數代表一個已編碼的 URI 組件。
說明
encodeURIComponent 方法返回一個已編碼的 URI。如果您將編碼結果傳遞給 decodeURIComponent ,那么將返回初始的字符串。因為encodeURIComponent 方法對所有的字符編碼,請注意,如果該字符串代表一個路徑,例如 /folder1/folder2/default.html ,其中的斜杠也將被編碼。這樣一來,當該編碼結果被作為請求發送到 web 服務器時將是無效的。如果字符串中包含不止一個 URI 組件,請使用 encodeURI 方法進行編碼。
要求
版本 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" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" > 
<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> 
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 古交市| 大宁县| 防城港市| 成武县| 丹江口市| 海兴县| 建水县| 轮台县| 屏边| 蚌埠市| 蛟河市| 伊金霍洛旗| 黄浦区| 长治市| 新津县| 新邵县| 鹤山市| 凌源市| 自治县| 和平县| 马边| 七台河市| 滦平县| 林口县| 体育| 库车县| 梨树县| 黄浦区| 平泉县| 大姚县| 夏邑县| 集贤县| 安西县| 灵川县| 关岭| 南开区| 饶河县| 依兰县| 太原市| 南开区| 恩施市|