2014-10-02 102 views
0

有没有一种方法可以将javascript和jquery的表单信息存储到变量中,只有当用户点击提交按钮时,保存该数据,否则将其丢弃。在提交表单之前将数据保存到JS数组中

我知道html表单做同样的事情,但我有一个例子,我可以使用相同的输入字段添加多个内容,当用户单击添加按钮内容通过ajax发送到控制器,然后插入数据库并从数据库中显示立即进入。但是我不希望事先将这些数据保存到数据库中,只有当提交完整的表单时。

因此,我想先将数据保存到某个数组,然后直接将数据保存到数据库中,并在用户单击提交按钮并将整个表单发送到服务器时将其显示并保存到数据库。

+0

可能重复(http://stackoverflow.com/questions/1184624/convert-form-data-to-js-object-with-jquery ) – NDM 2014-10-08 12:13:21

回答

0

在提交表单之前,您可以使用onsubmit事件(附加在表单元素上)来执行JavaScript代码。

因此,您可以在提交之前进行所有必要的更改,甚至可以停止提交并启动ajax。

0

您可以添加一个事件处理程序,该程序会在每次输入字段中使用this时发生更改时添加数据。

而且每次都相应地更新数组。您也可以使用具有不同属性的对象,我认为这是最好的。

0

是的,您可以通过使用下面的代码来阻止您的表单提交。 [转换形式的数据,以与jQuery JS对象]

$("form").submit(function(event) { 
console.log($(this).serializeArray()); 
event.preventDefault(); 
}); 

// and use this to create a json array of form. 
$(this).serializeArray(); 
0
$("form").submit(function(event) { 
    var newArray = $(this).serializeArray(); 
    event.preventDefault(); 
}); 
相关问题