JavaScript獲取從上個頁面傳過來的url引數:GetQueryString()方法和window.location.search方法
阿新 • • 發佈:2018-11-21
如下,當loadContractInfo()方法被呼叫時,將跳轉到指定頁面blackViewContract.html 並傳三個引數(contractId、state、identity)過去
- function loadContractInfo(contractId,state,identity){
- window.location.href = ctp + "/pages/contractmanage/blackViewContract.html?id="+contractId+"&state="+state+"&identity="+identity;
- }
在blackViewContract.html裡面:
- <script type="text/javascript">
- function GetQueryString(name) {
- var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
- var r = window.location.search.substr(1).match(reg);
- if (r != null) return unescape(r[2]); return null;
- }
- //接收到的三個引數
- var contractId = GetQueryString("id");
- var state= GetQueryString("state");
- identity= GetQueryString("identity");
- </script>
只需要把上面一段程式碼粘在你的<script></script>標籤裡面就可以啦!比window.location.search方法簡單多了有木有!!
既然講到這裡也把window.location.search的用法說一下吧!
還是對於上面的url
- <script type="text/javascript">
- var str = window.location.search;
- var name = "id";
- var id1;
- if (str.indexOf(name) != -1){
- var pos_start = str.indexOf(name) + name.length + 1;
- var pos_end = str.indexOf("&", pos_start);
- if (pos_end == -1) {
- id1 = str.substring(pos_start);
- }else{
- id1 = str.substring(pos_start,pos_end);
- }
- }
- name = "state";
- var state1;
- if (str.indexOf(name) != -1) {
- var pos_start = str.indexOf(name) + name.length + 1;
- var pos_end = str.indexOf("&", pos_start);
- if (pos_end == -1) {
- state1 = str.substring(pos_start);
- }else{
- state1 = str.substring(pos_start,pos_end);
- }
- }
- name = "identity";
- var identity1;
- if (str.indexOf(name) != -1) {
- var pos_start = str.indexOf(name) + name.length + 1;
- var pos_end = str.indexOf("&", pos_start);
- if (pos_end == -1) {
- identity1= str.substring(pos_start);
- }else{
- identity1= str.substring(pos_start,pos_end);
- }
- }
- </script>
OK.