+1 @meouw - 巧妙的解決辦法!
另一種方法是使用string.split。以下實現對您正在搜索的參數及其值(即任何字符串)很靈活。
function getUniqueParam (query, paramName) {
var i, row, result = {};
query = query.substring(1);
//split query into key=values
query = query.split('&');
for (i = 0; i < query.length; i++) {
row = query[i].split('=');
// if duplicate then set value to false;
if(result[row[0]]) {
result[row[0]] = false;
}
else {
result[row[0]] = row[1];
}
};
// return the requested param value
return result[paramName];
}
// Testing:
var a = '?LastName=abc&FirstName=xyz&insurance=2&insurance=3&insurance=4&insurance=5&BirthDate=01-01-2000';
var b = '?LastName=abc&FirstName=xyz&insurance=2&BirthDate=01-01-2000';
console.log(getUniqueParam(a, 'insurance'));
console.log(getUniqueParam(b, 'insurance'));
您正在尋找[this](http://stackoverflow.com/questions/901115/get-querystring-values-with-jquery)? – paragy 2011-03-05 10:38:17
@alliswell:謝謝。我使用了你提到的問題的頂級答案功能。它返回第一個**保險**值,但不考慮no。 **保險**在字符串中。我只想在字符串中只有一個**保險**的情況下返回**保險**值。所以現在我必須在字符串中添加一個保險號。 – Awan 2011-03-05 10:53:55
歡迎您使用正則表達式,或者使用簡單的條件檢查。 – paragy 2011-03-05 11:00:55