URLの’?’以降のクエリ部分を連想配列で返すjavascriptです。
//URLのクエリー部分を連想配列で返す関数
function urlquery(url){
//?より後ろの文字列を取得
var q=url.substr(url.indexOf('?')+1,url.length);
//&を区切り文字にしてクエリを配列取得
q_array=q.split('&');
var i
var query_col
query_array=new Array();
//クエリのパラメーターと値を連想配列にセットする
for(i=0;i<q_array.length;i++){
query_col=q_array[i].substr(0,q_array[i].indexOf('='));
query_array[query_col]=q_array[i].substr(q_array[i].indexOf('=')+1,q_array[i].length);
}
return query_array;
}
例えば、
http://felix-labo.org/index.php?page=Kanri.Products.ProSyubetu&abc=okok&id=allall
といったURLがあったとすると
var q=urlquery(url);
var page=q['page'];
var abc=q['abc'];
var id=q['id'];
という具合に値を取得できます。
ちなみに、連想配列を順番に取得するなら
var i=0;
for(i in query_array){
alert(query_array[i]);
}
こんな感じ