Hanki url-parametri jquery tai miten saada kysely merkkijono arvot js:ssä

Olen nähnyt paljon jQuery-esimerkkejä, joissa parametrin koko ja nimi ovat tuntemattomia. Urlissani on aina vain yksi merkkijono:

http://example.com?sent=yes

Haluan vain havaita:

  1. Onko sent olemassa?
  2. Onko se yhtä suuri kuin "yes"?
Ratkaisu

Paras ratkaisu täällä.

var getUrlParameter = function getUrlParameter(sParam) {
    var sPageURL = window.location.search.substring(1),
        sURLVariables = sPageURL.split('&'),
        sParameterName,
        i;

    for (i = 0; i < sURLVariables.length; i++) {
        sParameterName = sURLVariables[i].split('=');

        if (sParameterName[0] === sParam) {
            return sParameterName[1] === undefined ? true : decodeURIComponent(sParameterName[1]);
        }
    }
};

Ja näin voit käyttää tätä funktiota olettaen, että URL-osoite on, http://dummy.com/?technology=jquery&blog=jquerybyexample.

var tech = getUrlParameter('technology');
var blog = getUrlParameter('blog');
Kommentit (33)

Toivottavasti tästä on apua.

 <script type="text/javascript">
   function getParameters() {
     var searchString = window.location.search.substring(1),
       params = searchString.split("&"),
       hash = {};

     if (searchString == "") return {};
     for (var i = 0; i < params.length; i++) {
       var val = params[i].split("=");
       hash[unescape(val[0])] = unescape(val[1]);
     }

     return hash;
   }

    $(window).load(function() {
      var param = getParameters();
      if (typeof param.sent !== "undefined") {
        // Do something.
      }
    });
</script>
Kommentit (0)

Kokeile tätä toimivaa demoa http://jsfiddle.net/xy7cX/

API:

Tämän pitäisi auttaa :)

koodi

var url = "http://myurl.com?sent=yes"

var pieces = url.split("?");
alert(pieces[1] + " ===== " + $.inArray("sent=yes", pieces));
Kommentit (1)