jQuery.param()
Метод jQuery.param() представляет переданный объект (массив, JavaScript-объект или jQuery-объект) в формате строки запроса, которую можно подставлять в URL. Эта строка уже закодирована с помощью глобального метода encodeURIComponent().
Если передаётся jQuery-выборка, тогда она должна иметь элементы <input> с атрибутами name и value.
Если передаётся массив, то это должен быть массив объектов в формате, который возвращается методом serializeArray().
Варианты использования
jQuery.param(объект[, traditional]) => String-
Представляет переданный объект в виде строки запроса и возвращает её. Необязательный параметр
traditionalопределяет способ преобразования объектов и массивов в строку запроса:true- стандартное преобразование (без преобразования вложенных объектов и массивов).false- глубокое преобразование (рекурсивное преобразование всех вложенных объектов и массивов). Используется по умолчанию.
Примеры
<html>
<head>
<title>Ajax в jQuery</title>
<script type="text/javascript" src="js/jquery.js"></script>
</head>
<body>
<p class="par1"></p>
<p class="par2"></p>
<p class="par3"></p>
</body>
</html>
<script>
var obj = {
options: {
first: true,
second: false
},
values: [1, 2, 3]
};
$('.par1').html('Закодированная строка с рекурсивным преобразованием:<br><b>' + $.param(obj) + '</b>');
$('.par2').html('Раскодированная строка с рекурсивным преобразованием:<br><b>' + decodeURIComponent($.param(obj)) + '</b>');
$('.par3').html('Раскодированная строка без рекурсивного преобразования:<br><b>' + decodeURIComponent($.param(obj, true)) + '</b>');
</script>
Закодированная строка с рекурсивным преобразованием:
options%5Bfirst%5D=true&options%5Bsecond%5D=false&values%5B%5D=1&values%5B%5D=2&values%5B%5D=3
Раскодированная строка с рекурсивным преобразованием:
options[first]=true&options[second]=false&values[]=1&values[]=2&values[]=3
Раскодированная строка без рекурсивного преобразования:
options=[object Object]&values=1&values=2&values=3