5

我目前有一个 jQuery 函数,我需要知道是否存在任何GET数据。我不需要查询字符串中的数据,只需要是否运行两个函数之一。

等效的PHP:

if (isset($_GET['datastring'])) {
    // Run this code
} else {
    // Else run this code
}
4

3 回答 3

5

您将不得不尝试类似的事情:(您不必使用变量,但如果您愿意,可以使用)

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

if ($.urlParam('variable_name') != '') {  // variable_name would be the name of your variable within your url following the ? symbol
    //execute if empty
} else {
    // execute if there is a variable
}

如果您想使用变量:

// example.com?param1=name&param2=&id=6
$.urlParam('param1'); // name
$.urlParam('id');        // 6
$.urlParam('param2');   // null
于 2012-04-27T17:56:32.590 回答
1

像这样?

if (yourUrlStringVar.indexOf('?')>-1) {
  return true;
} else {
  return false;
}
于 2012-04-27T17:55:04.357 回答
1
location.search != ""

如果有任何 GET 参数,将返回 true。

http://www.w3schools.com/jsref/prop_loc_search.asp, location.search 从“?”返回 URL 的“查询部分”。符号起。因此,对于 page http://www.mysite.com/page?query=3, location.search 是?query=3。对于http://www.google.com/, location.search 是一个空字符串。

于 2012-04-27T17:57:25.350 回答