Javascript 将JSON从表单序列化为对象

Javascript 将JSON从表单序列化为对象,javascript,jquery,html,forms,Javascript,Jquery,Html,Forms,我试图在提交时转换表单数据以更新json对象 这就是我到目前为止所做的: var app = { slidePreviews: "", selectedTheme: "", slideDuration: 7000, slides: [] }; $(document).ready(function() { $('#slideForm').on('submit', function(event){ var slide = $(this).toJSON; app.slides

我试图在提交时转换表单数据以更新json对象

这就是我到目前为止所做的:

var app = {
slidePreviews: "",
selectedTheme: "",
slideDuration: 7000,
    slides: []
};
$(document).ready(function() {

$('#slideForm').on('submit', function(event){
    var slide = $(this).toJSON;
    app.slides.push(slide);
    return false;
});
}); 

专题介绍的标题: 幻灯片标题: 幻灯片标题: 内容 此处幻灯片内容

我希望使用表单数据更新对象应用程序。当我记录“幻灯片”时,我得到“未定义”。
任何建议

我认为您需要在调用
toJSON()
call:

$(this).serialize();

使用
serialize
函数将表单序列化为JSON,而不是使用
toJSON
函数,如下所示:

var obj = $("#slideForm").serialize();

您可以像这样使用jQuery的
serialize()

var obj = $("#slideForm").serialize();

当我记录幻灯片时,它返回“function()”。我似乎没有收到任何jsonI的消息。我没有在您的
标记上看到一个关闭标记。这仅仅是一个输入错误吗?如果它在将
幻灯片打印到控制台时打印“function()”,我猜您忘记了
serialize()
调用上的括号,$(此)。不带括号的serialize将返回serialize函数,而不是调用它。另外,
serialize()
创建一个字符串,如果需要JSON对象,可以使用
serializeArray()
获取名称/值对数组,请参见[this question]()。jQuery没有
toJSON()
methodMy bad。它是主干模型类中的一个函数。