最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JS解決url傳值出現(xiàn)中文亂碼的另類辦法

 更新時(shí)間:2013年04月08日 15:25:08   作者:  
為什么用表單的方式就可以傳遞中文,而URL的方式就不行了呢?非得用URL傳值的方式才能解決問(wèn)題嗎?這里我想到了動(dòng)態(tài)表單,何不用它來(lái)解決呢

 在開(kāi)發(fā)web應(yīng)用時(shí),很多情況都需要進(jìn)行前后臺(tái)的數(shù)據(jù)交互,有時(shí)候我們可能需要把前臺(tái)的中文數(shù)據(jù)通過(guò)URL的方式傳遞到后臺(tái),但此時(shí)有個(gè)令人頭疼的問(wèn)題,因?yàn)镴ava中網(wǎng)絡(luò)傳輸使用的標(biāo)準(zhǔn)字符集是ISO-8859-1,所以在后臺(tái)用request.getParameter("message");獲取前臺(tái)傳過(guò)來(lái)的中文時(shí),得到的還是ISO-8859-1字符集,中文就會(huì)出現(xiàn)亂碼現(xiàn)象,好多人的解決辦法是在前臺(tái)傳遞中文之前進(jìn)行decode,后臺(tái)再decode一下進(jìn)行轉(zhuǎn)換,這樣感覺(jué)很是麻煩,難道就沒(méi)其他的方式解決嗎?

       苦思冥想了一下:為什么用表單的方式就可以傳遞中文,而URL的方式就不行了呢?非得用URL傳值的方式才能解決問(wèn)題嗎?這里我想到了動(dòng)態(tài)表單,何不用它來(lái)解決呢,示例如下:

       假設(shè)有如下應(yīng)用場(chǎng)景:KPI列表頁(yè)面中,對(duì)每個(gè)KPI都有生成預(yù)警數(shù)據(jù)的功能,當(dāng)點(diǎn)擊列表中每個(gè)KPI生成數(shù)據(jù)的按鈕時(shí),需要把KPI的id和name傳遞到后臺(tái)。

       前端對(duì)應(yīng)的js方法:

         用URL傳值的寫(xiě)法:

復(fù)制代碼 代碼如下:

           function createData(indexId,indexName){
                     window.location.href="catalogAction.do?action=CreateIndexData&catalogId="+indexId+"&catalogName="+indexName+"&random="+Math.random();

                   }


用這種方法,由于KPI名稱大多為中文,在后臺(tái)接收到的值肯定為亂碼。

若用動(dòng)態(tài)生成表單的方式就可以解決:

復(fù)制代碼 代碼如下:

function createData(indexId,indexName){
               var urlStr =  "catalogAction.do?action=CreateIndexData&PcatalogId=<c:out value='${catalogId}'/>&catalogId="+indexId+"&random="+Math.random();
               var f= document.createElement('form');
               f.action = urlStr;
               f.method = 'post';
               document.body.appendChild(f);
               var temp=document.createElement('input');
               temp.type= 'hidden';
               temp.value=indexName;
               temp.name='catalogName';
               f.appendChild(temp);
               f.submit();
}

對(duì)中文字段用form的方式提交過(guò)去,不是中文的仍然用URL傳,這樣就輕松解決了向后臺(tái)傳遞中文出現(xiàn)亂碼的情況。

相關(guān)文章

  • JS獲取鍵盤(pán)上任意按鍵的值(實(shí)例代碼)

    JS獲取鍵盤(pán)上任意按鍵的值(實(shí)例代碼)

    JS獲取鍵盤(pán)上任意按鍵值的實(shí)例代碼。需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助
    2013-11-11
  • 深入理解基于vue-cli的webpack打包優(yōu)化實(shí)踐及探索

    深入理解基于vue-cli的webpack打包優(yōu)化實(shí)踐及探索

    這篇文章主要介紹了基于vue-cli的webpack打包優(yōu)化實(shí)踐及探索,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • 原生js檢測(cè)頁(yè)面加載完畢的實(shí)例

    原生js檢測(cè)頁(yè)面加載完畢的實(shí)例

    今天小編就為大家分享一篇原生js檢測(cè)頁(yè)面加載完畢的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-09-09
  • 關(guān)于COOKIE個(gè)數(shù)與大小的問(wèn)題

    關(guān)于COOKIE個(gè)數(shù)與大小的問(wèn)題

    在一次面試過(guò)程中,面試官問(wèn)過(guò)我關(guān)于瀏覽器cookie的問(wèn)題包括:cookie大小,cookie個(gè)數(shù)限制以及如何操作cookie等一系列的問(wèn)題。
    2011-01-01
  • JavaScript中雙嘆號(hào)!!作用示例介紹

    JavaScript中雙嘆號(hào)!!作用示例介紹

    !!一般用來(lái)將后面的表達(dá)式強(qiáng)制轉(zhuǎn)換為布爾類型的數(shù)據(jù),因?yàn)閖avascript是弱類型的語(yǔ)言,所以有時(shí)需要強(qiáng)制轉(zhuǎn)換為相應(yīng)的類型
    2014-09-09
  • 淺析JavaScript如何解決跨域問(wèn)題并手寫(xiě)一個(gè)jsonp

    淺析JavaScript如何解決跨域問(wèn)題并手寫(xiě)一個(gè)jsonp

    跨域是指瀏覽器為了安全性,實(shí)施的同源策略,同源策略要求,只有協(xié)議、域名和端口號(hào)完全相同的網(wǎng)頁(yè),才能共享資源,本文整理了一些常用的跨域解決方法,希望對(duì)大家有所幫助
    2024-03-03
  • 超全面的JavaScript開(kāi)發(fā)規(guī)范(推薦)

    超全面的JavaScript開(kāi)發(fā)規(guī)范(推薦)

    作為一名開(kāi)發(fā)人員(WEB前端JavaScript開(kāi)發(fā)),不規(guī)范的開(kāi)發(fā)不僅使日后代碼維護(hù)變的困難,同時(shí)也不利于團(tuán)隊(duì)的合作,通常還會(huì)帶來(lái)代碼安全以及執(zhí)行效率上的問(wèn)題。本文就主要介紹了關(guān)于Javascript的命名規(guī)范、注釋規(guī)范以及框架開(kāi)發(fā)的一些問(wèn)題,需要的朋友可以參考學(xué)習(xí)。
    2017-01-01
  • 使用Chart.js圖表庫(kù)制作漂亮的響應(yīng)式表單

    使用Chart.js圖表庫(kù)制作漂亮的響應(yīng)式表單

    數(shù)據(jù)包圍著我們。雖然搜索引擎和其他應(yīng)用都對(duì)基于文本方式表示的數(shù)據(jù)偏愛(ài)有加,但人們發(fā)現(xiàn)可視化是更容易理解的一種方式。今年初,SitePoint 發(fā)表了 Aurelio 的文章《 Chart.js簡(jiǎn)介》。在深入研究 Chart.js 的功能后,本文將會(huì)講解這篇簡(jiǎn)介的一些重點(diǎn)。
    2015-10-10
  • 跨瀏覽器的設(shè)置innerHTML方法

    跨瀏覽器的設(shè)置innerHTML方法

    跨瀏覽器的設(shè)置innerHTML方法...
    2006-09-09
  • 基于JavaScript實(shí)現(xiàn)交互式博客

    基于JavaScript實(shí)現(xiàn)交互式博客

    在Web開(kāi)發(fā)中,JavaScript(JS)是一種至關(guān)重要的編程語(yǔ)言,它使網(wǎng)頁(yè)具有交互性,本文主要介紹了如何使用JavaScript實(shí)現(xiàn)一個(gè)交互式博客,需要的可以了解下
    2024-01-01

最新評(píng)論

蒙城县| 北辰区| 仙居县| 河南省| 南投县| 庄浪县| 阳泉市| 沾化县| 元江| 金溪县| 鄂伦春自治旗| 麦盖提县| 新干县| 元谋县| 富阳市| 潜江市| 溆浦县| 无棣县| 江源县| 阿尔山市| 枣阳市| 周宁县| 枣庄市| 嘉兴市| 长子县| 西吉县| 瓮安县| 云南省| 韶关市| 马边| 蒲城县| 清涧县| 海丰县| 岳阳市| 长岛县| 积石山| 抚州市| 翁源县| 绥江县| 卓资县| 枣庄市|