我有一個使用GET方法幷包含一個數組形式:可以在javascript
http://www.example.com?name[]=hello&name[]=world
我試圖找回數組值「你好」和使用JavaScript或「世界」 jQuery的。
我已經看過堆棧溢出(例如How can I get query string values in JavaScript?)類似的解決方案,但他們似乎只處理參數,而不是數組。
是否可以獲取數組值?
我有一個使用GET方法幷包含一個數組形式:可以在javascript
http://www.example.com?name[]=hello&name[]=world
我試圖找回數組值「你好」和使用JavaScript或「世界」 jQuery的。
我已經看過堆棧溢出(例如How can I get query string values in JavaScript?)類似的解決方案,但他們似乎只處理參數,而不是數組。
是否可以獲取數組值?
你去那裏:http://jsfiddle.net/mm6Bt/1/
function getURLParam(key,target){
var values = [];
if (!target) target = location.href;
key = key.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
var pattern = key + '=([^&#]+)';
var o_reg = new RegExp(pattern,'ig');
while (true){
var matches = o_reg.exec(target);
if (matches && matches[1]){
values.push(matches[1]);
} else {
break;
}
}
if (!values.length){
return null;
} else {
return values.length == 1 ? values[0] : values;
}
}
var str = 'http://www.example.com?name[]=hello&name[]=world&var1=stam';
console.log(getURLParam('name[]',str));
console.log(getURLParam('var1',str));
在你張貼會在你的情況下工作太,除非PARMS重複的鏈接答案http://stackoverflow.com/a/3855394/295783通過你的建議提及數組和使用[] – mplungjan 2013-04-07 17:56:37
只是要清楚:URL沒有* arrays *的概念。你所擁有的只是多個參數同名。 '[]'通常用於PHP服務器,然後它將使用這些參數創建數組。其他語言(例如Python)可以處理具有相同名稱的多個參數(並且沒有'[]')就好了。 – 2013-04-07 17:56:43
從你鏈接到的問題,你可能會發現這個答案有幫助:http://stackoverflow.com/a/9362596/218196。 – 2013-04-07 18:00:22