git-svn-id: http://xe-core.googlecode.com/svn/trunk@856 201d5d3c-b55e-5fd7-737f-ddc643e51545

This commit is contained in:
zero 2007-04-02 00:59:01 +00:00
parent b96a8dfc4f
commit f08a92575f
5 changed files with 27 additions and 22 deletions

View file

@ -26,21 +26,23 @@ String.prototype.getQuery = function(key) {
String.prototype.setQuery = function(key, val) {
var href = location.href;
var idx = href.indexOf('?');
if(idx == -1) return;
var uri = href.substr(0, idx);
var query_string = href.substr(idx+1, href.length);
var args = {}
query_string.replace(/([^=]+)=([^&]*)(&|$)/g, function() { args[arguments[1]] = arguments[2]; });
args[key] = val;
var q_list = new Array();
for(var i in args) {
if(!args[i].trim()) continue;
q_list[q_list.length] = i+'='+args[i];
var uri = href;
if(idx != -1) {
uri = href.substr(0, idx);
var query_string = href.substr(idx+1, href.length);
var args = {}
query_string.replace(/([^=]+)=([^&]*)(&|$)/g, function() { args[arguments[1]] = arguments[2]; });
args[key] = val;
var q_list = new Array();
for(var i in args) {
if(!args[i].trim()) continue;
q_list[q_list.length] = i+'='+args[i];
}
return uri+"?"+q_list.join("&");
} else {
if(val.trim()) return uri+"?"+key+"="+val;
else return uri;
}
return uri+'?'+q_list.join('&');
}
/**