使用 JQuery 将 DOM 元素传递到另一个页面

Passing DOM elements to another page with JQuery

所以,我知道这是一个奇怪的问题。我有 2 页,有人填写了一堆输入。下一页将是 "print to pdf" 类型的交易 w/ Coldfusion。但是,我想将所有信息发送到下一页,而不是丢失输入数据的人输入的内容。有没有办法使用 jQuery(或 CF 中我没见过的其他选项)来可能获取 $('body') 并将其传递给下一页的 sub in 以便它保留 <input> 值?我不想提交表单,因为根据显示的那些输入,使用 javascript 也会进行大量计算,而 <cfdocument> 使用 [=18= 会遇到问题]事后

我将使用 jQuery's serializeArray 序列化所有表单输入值,并将其存储在 localStorage 中。在下一页中,只需读取 localStorage 并使用 JSON.parse.

将数据解析回对象

第 1 页:

localStorage.formData = $("form").serializeArray()

第 2 页:

var formData = JSON.parse(localStorage.formData)

...aaa,您将在第 2 页的对象中获取所有数据。

您可以缓存数据以便在 CFML 的另一个页面上使用。我用 Railo 做这个,但 Adob​​e CF 有类似的功能。我想在下一页上使用的任何数据都会进入一个结构数组。我还没有尝试过 cacheput('formdata', form),但它似乎可以工作。

Page 1
// Empty cache storage
cacheClear();
// call the function to cache data
cachePut('cData', data);

Page 2
// get items from the cache
data = cacheGet('cData');

好的,所以本地存储的元素数据有效,但我实际这样做的方式是将 $('body').html() 写入字符串,然后使用 $.ajax() 将其传递到 cfc 文件,我在其中使用 <cffile> 将文本文件写入 CF 临时目录,然后使用 <cfinclude> 在 PDF 页面上将该文本重新呈现为 HTML/CFML。希望这对需要的人有所帮助!