JSOO - Classe para manipular Querystring
Publicado por Emiliano Eloi Silva Barbosa 01/08/2007
[ Hits: 5.202 ]
Homepage: http://emilianoeloi.com.br
Classe de manipulaçao de querystring, método contrutor, mudante de ítens da quetystring, acessor de um único ítem e acesso da quetystring.
/**
* Classe de manipulação de querystring
* @class Essa classe representa uma instância de um objeto Querystring
* @contructor
*/
Querystring = function() {};
with({qs: Querystring.prototype}){
/**
* Array que contém cada ítem da querystring.
* @type array
*/
qs.arrQS=new Array();
/**
* Array que contém a querystring corrente.
* @type array
*/
if(!(window.location.href.indexOf("?")== -1)){
qs.arrQSDefault = window.location.href.split('?')[1].split('&');
for(i=0;i<qs.arrQSDefault.length;i++){
qs.arrQS[i] = {};
qs.arrQS[i]['variavel'] = qs.arrQSDefault[i].split('=')[0];
qs.arrQS[i]['valor'] = qs.arrQSDefault[i].split('=')[1];
}
}
/**
* Muda o item da querystring.
* @param {string} va Nome da variável
* @param {string} vl Valor da variável
*/
qs.setItem = function(va,vl){
existe=false;
indice = qs.arrQS.length;
for(i=0;i<qs.arrQS.length;i++)
if(qs.arrQS[i]['variavel'] == va){
qs.arrQS[i]['valor'] = vl;
existe = true;
}
if(!existe){
qs.arrQS[indice] = {};
qs.arrQS[indice]['variavel'] = va;
qs.arrQS[indice]['valor'] = vl;
}
}
/**
* Acessa o ítem da querystring
* @param {string} va Nome da variavel
* @return {string} Valor da variável.
*/
qs.getItem = function(va){
for(i=0;i<qs.arrQS.length;i++)
if(qs.arrQS[i]['variavel'] == va)
return qs.arrQS[i]['valor'];
}
/**
* Acessa a querystring
* @return {string} Querystring.
*/
qs.getQS = function(){
strQS = "";
for(i=0;i<qs.arrQS.length;i++){
strQS += qs.arrQS[i]['variavel']+"="+qs.arrQS[i]['valor'];
strQS += (i < qs.arrQS.length-1)?'&':'';
}
return "?"+strQS;
}
}
Javascript addDay(): Cálculo de data!
Cookie - Número de visitas do usuário
Gerador de exercícios para matemática
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
fusermount3 no Ubuntu 25.10 - mantenha o perfil do AppArmor
[Resolvido] dlopen(): error loading libfuse.so.2 AppImages require FUSE to run.
Criação de diretórios e aplicação de restrições de acesso no Linux
Debian Stable travado em atualizações: dist-upgrade não resolve (2)
Como você configura seu GNOME? Eu faço assim... (5)
Aderencia a Obsolencia Programada. (13)









