我現在有一個jQuery的功能,我需要知道是否有任何GET
數據存在。我不需要來自查詢字符串的數據,只是是否有或者不運行兩個函數之一。
等效PHP:
if (isset($_GET['datastring'])) {
// Run this code
} else {
// Else run this code
}
我現在有一個jQuery的功能,我需要知道是否有任何GET
數據存在。我不需要來自查詢字符串的數據,只是是否有或者不運行兩個函數之一。
等效PHP:
if (isset($_GET['datastring'])) {
// Run this code
} else {
// Else run this code
}
你將不得不嘗試類似的措施:(你不必使用變量,但你可以的,如果你想)
$.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
}
如果你想使用的變量:如果有任何GET參數
// example.com?param1=name¶m2=&id=6
$.urlParam('param1'); // name
$.urlParam('id'); // 6
$.urlParam('param2'); // null
這樣嗎?
if (yourUrlStringVar.indexOf('?')>-1) {
return true;
} else {
return false;
}
location.search != ""
將返回true。
從http://www.w3schools.com/jsref/prop_loc_search.asp,location.search返回URL的 「查詢部分」,從 '?'符號向前。因此,對於頁面http://www.mysite.com/page?query=3
,location.search是?query=3
。對於http://www.google.com/
,location.search是一個空字符串。
我正在使用mod_rewrite,因此不幸的是,這似乎不適用於這種情況。 – lethalMango 2012-04-27 17:59:11
在這種情況下,我不確定您可以訪問GET參數。從客戶端,你看到的只是你要求的URL。如果這與服務器端正在使用的URL不同,那麼JavaScript將忽略這一點。 – Ord 2012-04-27 18:04:20
可能的重複:http://stackoverflow.com/questions/901115/get-query-string-values-in-javascript – AndrewR 2012-04-27 17:53:56
你應該補充說你正在使用mod_rewrite。事實上,我認爲這使得這個問題在客戶端無法解決。 – Ord 2012-04-27 18:22:47