gpt4 book ai didi

javascript - 保留本地 UIWebView 值

转载 作者:行者123 更新时间:2023-11-29 13:35:13 25 4
gpt4 key购买 nike

*编辑*我做了更多研究,看起来 cookie 也可能是答案。我想我会在嵌入式 html 中的表单中添加一个按钮,该按钮调用一个函数来为值创建一个 cookie。然后我可以使用 stringByEvaluatingJavaScriptFromString 方法通过 obj-c 访问这个 cookie。当然,然后你会遇到过期问题,不允许多份表格等。所以这是一个功能的权衡。我将坚持使用 window.location 路由,因为我可以将其存储在数据库中,然后用户可以创建另一个相同形式的实例*编辑*

我做了一些研究,我对如何实现这个有一个模糊的想法,但我很好奇是否有更好的方法。

我有一个 html 表单的本地副本加载到我正在开发的这个 iPad 应用程序的 UIWebView 中。表单通过 xml 在服务器端提交并在那里解析以进行数据库存储,但不幸的是它们非常冗长。所以我想让用户保存当前状态的表单(也许他们只填了一半),然后稍后再返回。

我的想法是,我必须编写一些 javascript 来解析表单中的单选按钮和复选框,然后通过 window.location 技巧将此数据传递给 obj-c 代码。但这非常冗长,在 JS 和 Obj-C 之间来回传递的字符串将非常长。有没有其他方法可以获取这些复选框/单选按钮的值并将它们传递给 obj-c 端以便稍后重新填充?

最佳答案

通过文件怎么样?将设置/数据保存到 JS 中的文件并在 Objective-C 中访问该文件。但我想你已经想到了这一点。

但最终,无论您采用何种方式,数据都必须来回传递。通过 window.location 技巧执行此操作将是最快的,并且如果操作系统本身没有施加任何限制,是否有任何理由不以这种方式执行此操作?

您可以将数据编码成一个 blob,以便于传递。

但另一方面,如果您希望设置在您的应用程序终止时保持不变,那么通过文件路径执行此操作可能会有用。

您也可以实际提交表单数据,但在使用 NSURLProtocol 派生类发送之前在 Objective-C 中拦截它。如果 NSURLProtocol 类知道数据已完成,它可以允许提交继续进行。但如果 window.location 没有大小限制,我认为这样做没有任何意义。

关于javascript - 保留本地 UIWebView 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10744379/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com