Коллекция Request.QueryString имеет неуклюжий интерфейс, особенно когда речь идет об итерациях или случаях, когда существует несколько параметров с одинаковым именем. Я предлагаю захватить всю строку запроса с помощью Request.QueryString.Item () или Request.ServerVariables ('QUERY_STRING') и проанализировать ее, используя unescape / decodeURIComponent. Это немного усилий, но дает вам больше контроля и последовательности.
Простой пример строчных букв:
var params = parseQueryString(Request.QueryString.Item());
function parseQueryString(qs) {
var parsed = {}, pairs = qs.split('&');
for (var i = 0; i < pairs.length; i ++) {
var pair = pairs[i], pos = pair.indexOf('=');
if (pos < 0) pos = pair.length;
parsed[unescape(pair.slice(0, pos)).toLowerCase()] = unescape(pair.slice(pos + 1));
}
return parsed;
}