2016-02-25 2 views
0

У меня есть HTML-форма с несколькими входами, я хочу превратить элементы формы в строку JSON. Так что у меня есть что-то вроде следующегоserializeObject on form selector

$('#myForm').submit(function() { 
    var data = JSON.stringify($(this).serializeObject()); 
    //do more stuff 
}); 

Однако я получать

Объект не поддерживает свойство или метод 'serializeObject'

Есть идеи? Я могу видеть из отладчика, что this является HTMLFormElement

ответ

1

То, что вы ищете, .serializeArray() который возвращается, как и jQuery Docs говорят:

массив JavaScript объектов, готовый быть закодирована в виде строки JSON. Он работает на коллекции jQuery форм и/или форм.

Вы должны обновить свой код следующим образом:

$('#myForm').submit(function() { 
    var data = JSON.stringify($(this).serializeArray()); 
    //do more stuff 
}); 
1

Существует serialize() и serializeArray(), но не serializeObject(). Вы используете какую-либо другую библиотеку или что?