国产探花免费观看_亚洲丰满少妇自慰呻吟_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> 
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 临沧市| 原阳县| 建瓯市| 张掖市| 定襄县| 五大连池市| 页游| 全州县| 静乐县| 大悟县| 平武县| 长阳| 宽城| 镇康县| 措勤县| 宜宾县| 从江县| 江北区| 昌邑市| 克东县| 富宁县| 曲周县| 小金县| 边坝县| 嵊州市| 平定县| 许昌市| 宿州市| 乐业县| 岳普湖县| 新安县| 云霄县| 青浦区| 江都市| 诸暨市| 水富县| 遂平县| 南通市| 万山特区| 阿拉善右旗| 廉江市|