JSOO - Classe para manipular Querystring

Publicado por Emiliano Eloi Silva Barbosa 01/08/2007

[ Hits: 4.856 ]

Homepage: http://emilianoeloi.com.br

Download qs.zip




Classe de manipulaçao de querystring, método contrutor, mudante de ítens da quetystring, acessor de um único ítem e acesso da quetystring.

  



Esconder código-fonte

/**
 * 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;
    }
}

Scripts recomendados

Máquina de estado finito

Adivinha Navegador

Horóscopo em JavaScript

Master Data , Detalhada !!!

Cálculo de frete/correios utilizando Ajax


  

Comentários
[1] Comentário enviado por emilianoeloi em 01/08/2007 - 14:18h

Exemplo de utilização!!!
http://www.portinfo.com.br/coder/qs.html


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts