高見龍

iOS app/Ruby/Rails Developer & Instructor, 喜愛非主流的新玩具 :)

在HTML頁面之間傳遞參數

一般網頁在傳遞參數,如果在 ASP 或是 PHP 之類的頁面,是很容易的,不過偶爾會遇到客戶的政策規定不能使用這些東西,但又要傳一些參數的時候。

解決法也許不只一個,借用 Javascript 的一些方法,透過 GET 傳值可以勉強達到這個需求:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
function getValue(varname)
{
  var url = window.location.href;
  var qparts = url.split("?");
  if (qparts.length == 0){return "";}
  var query = qparts[1];
  var vars = query.split("&");
  var value = "";
  for (i=0; i<vars.length; i++)
  {
    var parts = vars[i].split("=");
    if (parts[0] == varname)
    {
      value = parts[1];
      break;
    }
  }
  value = unescape(value);
  value.replace(/\+/g," ");
  return value;
}

用getValue這個方法可以拆解網址後面的參數,例如:

http://xxx.xxx.xx.xx/abc.htm?AA=1&BB=2

取用參數AA的方法則為getValue("AA"),其它的以此類推。

Comments