Javascript 将JSON从表单序列化为对象
我试图在提交时转换表单数据以更新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
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。它是主干模型类中的一个函数。