1

我试图找出一种方法来从带有 javascript 的表单中读取 GET 方法信息。我们的 IT 部门的服务器处于锁定状态,作为网络团队,我们只能使用 javascript 来完成我们的任务。如果可以的话,我会使用 PHP,但我不能。

如果可能的话,我需要做的是在 js 中读取通过 G​​ET 方法发送的数据,以便我可以将数据分配给变量,并在用户对表单执行操作后在各个页面上使用它。

IE。如果在 url 中发送数据http://somesite.com?add_to_cart=true&items=10

任何帮助,将不胜感激!

4

2 回答 2

6

这个页面有一个很好的运行。你不需要 jQuery 来做这件事。他们的 jQuery 版本是:

$.extend({
  getUrlVars: function(){
    var vars = [], hash;
    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
    for(var i = 0; i < hashes.length; i++)
    {
      hash = hashes[i].split('=');
      vars.push(hash[0]);
      vars[hash[0]] = hash[1];
    }
    return vars;
  },
  getUrlVar: function(name){
    return $.getUrlVars()[name];
  }
});

使用它:

// Get object of URL parameters
var allVars = $.getUrlVars();

// Getting URL var by its nam
var byName = $.getUrlVar('name');
于 2010-10-25T18:49:04.033 回答
6
function getQuerystring(key, default_)
{
  if (default_==null) default_=""; 
  key = key.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regex = new RegExp("[\\?&]"+key+"=([^&#]*)");
  var qs = regex.exec(window.location.href);
  if(qs == null)
    return default_;
  else
    return qs[1];
}

var addtocart = getQuerystring('add_to_cart','false');

来源: http: //www.bloggingdeveloper.com/post/JavaScript-QueryString-ParseGet-QueryString-with-Client-Side-JavaScript.aspx

于 2010-10-25T18:50:13.347 回答