当我附加一个具有大值的隐藏输入字段时,jquery append()偶尔会失败

时间:2013-07-26 13:52:25

标签: jquery

我有一个隐藏的输入字段,其中一个大的隐藏值以字符串形式发送(大约1KB)。在客户端, 我做了一个formElement.append(hiddenInputElement)。现在这种情况偶尔会在具有低内存(64MB RAM)的移动设备上失败。我怀疑由于值字段较大,设备无法执行此操作。

有没有办法在没有引起太多记忆愤怒的情况下完成追加?或者我应该压缩值字段并发送数据吗?

此外,还有其他替代品可以追加吗?是否有更简单的方法来复制隐藏的值而不占用太多内存?

1 个答案:

答案 0 :(得分:1)

无论你将数据添加到dom的方式,内存使用情况肯定都是一样的......虽然,由于1k可能不是内存问题,但更多关于DOM本身的重绘或其他内容。

首先,真的需要隐藏在DOM中吗?如果你通过javascript追加它意味着你知道价值,为什么不把它保存在JS中并在提交表单中注入? 如果必须在DOM中,请尝试使用div添加空display:none;,然后将数据放入其中,以便稍后使用...

我不知道移动可能性,但如果它与普通浏览器相同,您可以轻松地使用我的建议解决它。