公司的研發同學都是做IOS和Android開發的,最近公司要做一個H5的小頁面,就臨時安排他們去做開發了。在html頁面間值傳遞上遇到了不少的問題,不過最終還是解決了,特此寫下解決方案,做個備忘,也幫助遇到同樣問題的同學。
解決方案如下
<!--
作者:zai_yuzhong@126.com
時間:2016-11-23
描述:獲取頁面傳參,并解決中文亂碼。示例url=b.html?id=123&name=小明
-->
<script type="text/javascript">
function GetQueryString (name) {
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");//獲取參數值的正則表達式
var urlKeys=window.location.search.substr(1);//獲取url傳參中?后面的值:id=123&name=小明
urlKeys=decodeURI(urlKeys);//針對中文亂碼的解決方案;decodeURI()解決亂碼問題
var r =urlKeys.match(reg);
window.console.log(r);//將r打印出來,我們發現r[2]是我們想要的結果
if(r!=null){
return r[2]; }
else{
return null;}
}
</script>
window.console.log(r);
打印出來的結果如下圖
QQ截圖20161123155823.png
調用方法如下
var strname=GetQueryString("name");//name是url傳過來的參數名