代码之家  ›  专栏  ›  技术社区  ›  mpen

传来传来传来?

  •  0
  • mpen  · 技术社区  · 14 年前

    我想使用ajax从另一个页面检索一些json,但我想传递用于请求原始页面的get参数。我该怎么做?JS会把它们存储在某个地方吗?还是有jquery解决方案?

    $.ajax({
        url: 'mysecretwebpage.com/supersecret',
        data: ???
    });
    
    3 回复  |  直到 14 年前
        1
  •  3
  •   Dr.Molle    14 年前

    你需要的数据会在

    window.location.search
    

    从该字符串中删除第一个字符(如果get不为空,则为问号)

        2
  •  2
  •   Slappy    14 年前

    我有个方便的功能:

    document.getParameterByName = function (name) {
      name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
      var regexS = "[\\?&]" + name + "=([^&#]*)";
      var regex = new RegExp(regexS);
      var results = regex.exec(window.location.href);
      if (results == null)
        return "";
      else
        return decodeURIComponent(results[1].replace(/\+/g, " "));
    };
    

    像这样使用它:

    var paramValue = document.getParameterByName('paramName');
    
        3
  •  1
  •   Community CDub    8 年前