javascript
.NET手记-JS获取Url参数
最近為App做活動(dòng)專區(qū),其中很多活動(dòng)都是采用html 5頁(yè)面來(lái)制作的。一方面體量較小,制作快速,更新維護(hù)容易;另一方面,嵌入App后適配效果也不會(huì)很差。
這里我們采用混編形式來(lái)從native app傳參給web頁(yè)面,我們采用的思路與主流的js與oc/java互調(diào)不同,主要通過(guò)Url傳遞參數(shù)。簡(jiǎn)單的說(shuō),就是通過(guò)Url拼串,將必要的參數(shù)傳遞給web頁(yè)面,這樣就免去了登錄的流程,如下:
?
?
那么接下來(lái)討論的就是如何使得html頁(yè)面獲取Url參數(shù),最簡(jiǎn)單的辦法就是直接通過(guò)JS來(lái)獲取,這里我采用jquery,這里根據(jù)找到的信息,列出了以下兩種種寫(xiě)法:
?
方法一,正則表達(dá)式匹配
?
$.getUrlParam = function (name) {var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");var r = window.location.search.substr(1).match(reg);if (r != null) return unescape(r[2]); return null;}?
調(diào)用方法
?
var logo = $.getUrlParam("logo");?
?
方法二,split參數(shù)
?
$.getQueryParameters = function () {var url = window.location.search;var parameters = new Object();if (url.indexOf("?") != -1) {var query = url.substr(1);var ary = query.split("&");for (var i = 0; i < ary.length; i++) {var keyValuePair = ary[i].split("=");parameters[keyValuePair[0]] = unescape(keyValuePair[1]);}}return parameters;}?
調(diào)用方法
?
var querys = $.getQueryParameters(); var name = querys["name"];?
其中要注意的是,iOS需要手動(dòng)將Url參數(shù)轉(zhuǎn)成unicode編碼,不然會(huì)一直訪問(wèn)頁(yè)面失敗。?
?
轉(zhuǎn)載于:https://www.cnblogs.com/mantgh/p/5151018.html
總結(jié)
以上是生活随笔為你收集整理的.NET手记-JS获取Url参数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: datazen Active Direc
- 下一篇: 3599元!极空间Z4S正式发布:升级I