将链接的URL参数捕获到警告框中

时间:2015-04-23 11:17:23

标签: javascript ajax

我想捕获链接onclick的URL参数,并将URL参数放在警告框中。例如,点击链接users.php?user_id=200

如何捕获URL参数“user_id = 200”?

我有这个脚本,但点击后,警告框显示为空:

$(document).ready(function() {
    $('.bluetext').on('click', function(event) {
        var url = window.location.search.substring(1);
        alert(url);
    });
});

2 个答案:

答案 0 :(得分:0)

NULL
  

我根据"分拆网址?"问号,导致" url"变量为具有两个值的数组:

url [0] =" users.php" url [1] =" user_id = 200"

然后只是访问url [1]希望它现在清楚

答案 1 :(得分:-1)

你的脚本运行正常。

如果你想获得重写的网址参数,例如, 的 http://stackoverflow.com/questions/29821832/capture-url-parameter-of-a-link-into-an-alert-box/29822617#29822617

然后你会得到一个空白警报信息。这仅适用于未重写网址。例如,您的代码仅适用于此类网址。的 http://stackoverflow.com/questions.php?question_id=29821832 (just for exmaple)

如果您正在尝试重新编写url的值,那么您可以尝试关注,

var params = window.location.pathname.split('/').slice(1); // ["1", "my-event"]
var first = params[0];
var second = params[1];
console.log(second) // will return "29821832". which is question id of this question.

但是如果你想获得非重写url的值,那么你的代码就可以了。

如果您想要某个特定变量的值,那么您可以尝试以下。

我用它来获取任何变量的值,

function getVarVal (key) {  
  return unescape(window.location.search.replace(new RegExp("^(?:.*[&\\?]" + escape(key).replace(/[\.\+\*]/g, "\\$&") + "(?:\\=([^&]*))?)?.*$", "i"), "$1"));  
}  

根据您的要求调用此功能。例如,

$('.bluetext').on('click', function(event) {
    alert(getVarVal("user_id")); 
});