Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在客户端保存Javascript FormData()对象_Javascript_Html_Cookies_Local Storage_Client Side - Fatal编程技术网

在客户端保存Javascript FormData()对象

在客户端保存Javascript FormData()对象,javascript,html,cookies,local-storage,client-side,Javascript,Html,Cookies,Local Storage,Client Side,我有一个html页面,其中包含一个表单元素和一些文本和文件输入元素。 使用此处建议的方法,通过ajax调用将此从提交到服务器: 正如您在上面链接的参考页面中所看到的,FormData()对象被用作输入数据的容器,我已经成功地完成了这项工作。 但是现在我们想要创建一个包含这些html元素的新页面,在客户端保存文本和文件输入(Cookie或本地Strorage或…),然后在另一个页面上进行ajax提交。 我无法在cookie或本地存储中保存新FormData();保存的是一个小字符串:“[ob

我有一个html页面,其中包含一个表单元素和一些文本和文件输入元素。
使用此处建议的方法,通过ajax调用将此从提交到服务器:
正如您在上面链接的参考页面中所看到的,FormData()对象被用作输入数据的容器,我已经成功地完成了这项工作。
但是现在我们想要创建一个包含这些html元素的新页面,在客户端保存文本和文件输入(Cookie或本地Strorage或…),然后在另一个页面上进行ajax提交。
我无法在cookie或本地存储中保存新FormData();保存的是一个小字符串:“[object FormData]”,而不是输入的文件和字符串。
我还尝试使用JSON.stringify()但没有成功;它只是返回了一个空的JSON(“{}”)。
(代码使用jQuery选择器)

var postData=newformdata($(form)[0]);
//var sPostedData=JSON.stringify(postData);//返回:“{}”
var myStorage=window.localStorage;//返回:“[object FormData]”

setItem(“contentOrder”,postData)
要从表单数据获取文件,请使用
formData.get('file')
其中
file
是输入的名称。返回的对象将是Blob类型(如何获取其内容)


完整的示例可以在这个提琴中找到:

localStorage仅存储字符串。此外,您不能使用脚本填充
文件
输入。您需要重新考虑这个流程…尤其是如果使用较大的文件,因为localStorage也有大小限制。我们有一个商店网站,我们需要添加什么功能,以便客户在登录之前购买。我想保留用户输入,直到他登录,然后进行提交。可以进行上传并存储在会话或临时文件中,然后在登录后对其执行其他操作