jQuery функция $.param()
Определение и применение
jQuery функция $.param() создает сериализованное представление массива, простого объекта, или объекта jQuery, которое подходит для использования в строке URL запроса, или AJAX запроса. В случае, если передан объект jQuery, то он должен содержать элементы ввода, содержащие пары имя/значение.
jQuery синтаксис:
Синтаксис 1.2:
$.param( obj )obj - Array, или PlainObject, или jQuery object
Синтаксис 1.4:
$.param( obj, traditional )obj - Array, или PlainObject, или jQuery object
traditional - Boolean
Добавлен в версии jQuery
1.2 (синтаксис расширен в версии 1.4)Значения параметров
| Параметр | Описание |
|---|---|
| obj | Массив, простой объект, или объект jQuery, предназначенный для сериализации. |
| traditional |
Логическое значение, указывающее, следует ли проводить традиционную сериализацию при котором преобразование
вложенных объектов и массивов не производится.
По умолчанию значение соответствует false (преобразование вложенных объектов и массивов
производится).
|
Пример использования
Пример использования jQuery функции .getScript()
Нажмите ▶, затем выполните действие из пояснения. Измените JavaScript и запустите пример ещё раз. В редакторе используется jQuery 3.1.1.
index.html
<button>serialize</button>
<button>traditional</button>
<p></p>
main.js
$(document).ready(function () {
var myObj = {
a: { one: 1, two: 2, three: 3 },
b: [1, 2, 3],
}
$('button:first').click(function () {
var obj = $.param(myObj)
var decoded = decodeURIComponent(obj)
$('p').text(decoded)
})
$('button:last').click(function () {
var obj = $.param(myObj, true)
var decoded = decodeURIComponent(obj)
$('p').text(decoded)
})
})
Нажмите ▶, чтобы запустить пример.
В этом примере с использованием jQuery функции $.param() мы при нажатии на первый элемент
<button>
(кнопка) создаем сериализованное представление объекта при котором преобразование вложенных объектов и массивов
производится (значение по умолчанию). А при нажатии на второй элемент
<button>
(кнопка) создаем сериализованное представление объекта при котором преобразование вложенных объектов и массивов не
производится, для этого мы передаем в качестве второго параметра функции $.param() логическое значение
true.
Обратите внимание, что мы еще используем JavaScript метод .decodeURIComponent() благодаря которому
мы получаем декодированную версию закодированного компонента универсального кода ресурса (URI). Результат выполнения
этого метода мы помещаем в элемент
<p>
с использованием jQuery метода
.text().