从UIWebView在iPad上提交表单后无响应

时间:2010-10-13 08:03:59

标签: forms ipad uiwebview

我目前正在UIWebView中打开一个网页,并提交一个在服务器端执行查询的表单,并返回youtube视频(如果可用)。我对服务器端实现没有发言权/控制权。

此webview在iPhone / iPod上运行正常,但是,当我尝试在iPad上运行相同的应用程序时,提交表单后没有响应。

我创建了一个虚拟应用程序,在iOS 3.2上编译,问题仍然存在。

我将NSLogs放在webview委托方法中,这表明在提交表单后(UIWebViewNavigationTypeFormSubmitted)没有任何反应。

我无法弄清楚为什么这只发生在iPad而不是iPhone / iPod Touch上。

我在IB中创建了webview,并将URL设置为viewDidLoad

[viewTourWebView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.realestatetour.com/mobiletours.htm"]]];

参考网址为 http://www.realestatetour.com/mobiletours.htm 输入游览ID为 10

由于

1 个答案:

答案 0 :(得分:0)

它不起作用的原因是因为表单在新页面中打开结果(即_blank),并且显然uiwebview及其代表会忽略在新窗口中打开的所有链接。

我找到了两种可能的解决方案:

1)使用javascript修改html,将所有_blank替换为_self用于所有锚标记。 (source

2)更优雅的解决方案,用于处理打开新窗口的链接。 (source

在我的情况下,我在iphone应用程序上重新创建了显示表单的网页,并将_blank更改为_self。