2010-06-23 5 views
5

Я хочу сериализовать и un-serialize форму с помощью jQuery.jQuery serialize и unserialize

Как я могу получить все атрибуты всех элементов сериализованным способом?

ответ

1

jQuery имеет функцию serialize.

$("#form").serialize(); // Returns serialized string 

Ссылка:. http://api.jquery.com/serialize/

+9

Что относительно несериализации? –

+0

@PabloPazos См. [Эту ссылку] (https://gist.github.com/rcmachado/242617) – ako

1

Все элементы в форме будут отправлены вместе при использовании $ ('форма') сериализации();

15

.serialize() будет сопоставить входные элементы управления, которые имеют имя атрибут, определенный в стандартную строку запроса:

foo=bar&bar=foo&and=soon 

Этот вид строки легко подъезд практически во всех «серверной» языка программирования.

Если вам необходимо сериализовать информацию об объекте, используйте JSON.

var obj = { 
    foo: 'bar', 
    more: 'etc 
}; 

сериализуйте это с помощью window.JSON.stringify(obj);. Чтобы не инициализировать такую ​​строку JSON, используйте window.JSON.parse(str);, который возвращает объект javascript.

Многие языки поддерживают этот принцип.

+1

привет, почему jquery использует атрибут name для сериализации формы (вместо использования атрибута id?) – frabiacca

+0

@frabiacca, потому что как работает HTTP POST и HTTP GET. Они используют имя для имени переменной и значение для значения переменной. Пары значений имени. Name = value & varnam = varval & custvar = custval ... и т. Д. – SgtPooki

+0

Это должен быть принятый ответ. –

Смежные вопросы