【问题标题】:how to get data from url with jqueryjquery如何从url获取数据
【发布时间】:2012-09-17 09:39:06
【问题描述】:

是否可以使用 jquery 从 url 获取数据

例如,如果您有www.test.com/index.html?id=1&name=boo

如何获取id和name?

【问题讨论】:

标签: jquery jquery-mobile


【解决方案1】:

试试这个。它是纯 javascript,不涉及 jQuery。事实上,对于这样的工作来说,jQuery 实在是太重了,真的。

function GetURLParameter(sParam)
{
    var sPageURL = window.location.search.substring(1);
    var sURLVariables = sPageURL.split('&');
    for (var i = 0; i < sURLVariables.length; i++)
    {
        var sParameterName = sURLVariables[i].split('=');
        if (sParameterName[0] == sParam)
        {
            return decodeURIComponent(sParameterName[1]);
        }
    }
}​

var id = GetURLParameter('id');
var name= GetURLParameter('name');

decodeURIComponent 应该用于允许参数值包含任何字符,例如非常关键的等号=、和号&amp; 或问号?

【讨论】:

  • 这是纯 javascript - 不是 jQuery。
  • @KrzysztofJabłoński - 如果您使用纯 JavaScript,请查看您的问题重复的答案:stackoverflow.com/questions/901115/…
  • 不客气,特别感谢您和@Tony 的帮助
  • 另一个小问题..这个geturlparameter返回一个字符串???因为我无法在 if 语句中比较它..
  • 我只是赞成这个答案,因为它是我正在寻找的问题的解决方案,但我不知道说 jQuery 对于任何工作来说都太重了,恕我直言。
【解决方案2】:

一个简单的,如果你知道网址总是有idname

var url = "www.test.com/index.html?id=1&name=boo";
var id = /id=(\d+)/.exec(url)[1];
var name = /name=(\w+)/.exec(url)[1];

【讨论】:

    【解决方案3】:

    这里我已经完成了上述问题的完整解决方案。请查看演示链接,如下所示:

    为此,您首先需要在标头标记中包含最新的 jquery.js 和 querystring-0.9.0.js 脚本文件。

    演示: http://codebins.com/bin/4ldqpac

    HTML

    <a href="#?param1=abc&param2=def">
      abc
    </a>
    

    JQuery

    $(function() {
        $("a").click(function() {
            setTimeout(function() {
                var param1 = $.QueryString("param1");
                var param2 = $.QueryString("param2");
                alert(param1);
                alert(param2);
            }, 300);
    
        });
    });
    

    演示: http://codebins.com/bin/4ldqpac

    【讨论】:

      【解决方案4】:

      试试这个:在 IE 和 chrome 中都可以正常工作。通过 javascript 获取查询字符串值

      $.urlParam = function(name){
              var results = new RegExp('[\?&]' + name + '=([^&#]*)').exec(window.location.href);
              if (results == null){
                 return null;
              }
              else {
                 return decodeURI(results[1]) || 0;
              }
          }
      
              var getData= $.urlParam('emailid');
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-26
        • 2011-02-18
        • 2016-07-20
        • 2014-03-13
        相关资源
        最近更新 更多