2017-07-26 45 views
0

我们正在通过网络视图访问移动应用程序设计新功能。使用后退按钮时保留自动完成结果

当用户点击来自应用程序菜单中的新观点,一个Web视图将打开,显示包含有单一的文本输入搜索表单按名称搜索项的集合页面。

此字段将自动完成类似于如何撰写新邮件时,Gmail应用程序自动完成从用户的联系人的电子邮件地址的方式。

在我们的例子中,当用户选择自动完成的结果之一,Web视图加载所选结果的细节。

我的问题是,如果有可能实现当用户点击后退按钮,他/她返回到前一页,但自动完成建议仍然活跃

编辑1

我的问题的目的是要找出这是否可以用标准的技术来实现,如Web组件用别的东西结合起来,或者如果工作实现已经存在的组件集合中的提供。

如果不是这样,我可以想象一种符合GIJOW建议的方法。

回答

0

你可以得到的输入内容,并将其存储在一个变量:,

<html> 
    <body> 
     <input id="query" type="text" value="My query text"/> 
    </body> 
</html> 

斯威夫特

let myValue = webView.stringByEvaluatingJavaScriptFromString("document.getElementById('myId').value") 

而且你如果在视图控制器负载重新设置后,例如:

<form> 
Query <input type="text" id="query" name="Query" width="20"/> 
</form> 

在斯威夫特 -

func webViewDidFinishLoad(webView: UIWebView!) { 
let html = String(format: "%@%@%@", "document.getElementById('query').value = ", myValue, ";") 
self.wbView.stringByEvaluatingJavaScriptFromString(html) 
} 

或者,如果你也想保持的结果,可以存储输入文字,并通过负载时再次页面查询字符串传递。

+0

如果我是正确的,这个想法是存储在web视图侧(iOS中的情况下,使用SWIFT)的结果,并在通过一次回动作重新加载页面重新注入它。 但是,我的问题旨在发现现有的解决方案作为Web组件或类似的;我现在要澄清我的问题 – Cec

+0

然后我不知道,但在这种情况下,我们必须删除您的移动标签,就好像我理解您希望在网络端实现它一样。在这种情况下,Mobile无关要求 – GIJOW

+0

我将移动标签留下,因为我不确定webview是否提供可通过完整的网络浏览器访问的所有平台功能,例如, HTML5本地存储可用于类似于您建议通过Swift执行的方法 – Cec

相关问题