stephanbauer: encodeURIComponent für ältere Browser

Hi,

weiss einer, ob es vielleicht irgendwo eine bereits geschriebene Funktion gibt, die die Aufgabe von encodeURIComponent() übernimmt?
(brauche mit codierung von / ? = etc.)

vielen Dank
sb

  1. Hi,

    weiss einer, ob es vielleicht irgendwo eine bereits geschriebene Funktion gibt, die die Aufgabe von encodeURIComponent() übernimmt?
    (brauche mit codierung von / ? = etc.)

    Ei selbstverfreilich:

    function escapeAll(string) {
     string=escape(string);
     string=rc(string,"*","%2A");
     string=rc(string,"+","%2B");
     string=rc(string,"-","%2D");
     string=rc(string,".","%2E");
     string=rc(string,"/","%2F");
     string=rc(string,"@","%40");
     string=rc(string,"_","%5F");
     return string;
    }

    Und, ach ja:

    function rc(text,chars,subs,insensitive) {
     if(chars) {
      var i, work, result="", start=0; subs=(subs)?subs:"";
      if(insensitive) {
       work=text.toLowerCase();
       chars=chars.toLowerCase();
      } else {
       work=text;
      }
      i=work.indexOf(chars,start);
      while(i>=0) {
       result+=text.substring(start,i)+subs;
       start=i+chars.length;
       i=work.indexOf(chars,start);
       if(!i) {
        break;
       }
      }
      result+=text.substring(start,text.length);
      return result;
     } else {
      return text;
     }
    }

    Jetzt läuft's ab JavaScript 1.0 ... 8-)

    Gruß, Cybaer

    --
    Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!