iphone – 从uiwebview文本字段获取数据

正在开发一个应用程序加载到uiwebview的HTML页面 – 该HTML文件包含文本字段和下拉列表,文本框等。

这里如何获取用户在文本字段中input的值以及从下拉列表(picker)中select的答案。

谢谢

你可以使用[UIWebView stringByEvaluatingJavascriptFromString:]方法,并通过执行JavaScript来获取值。

例如:如果你的html是:

 <html> <body> <input id="myId" type="text" value="TextValue"/> </body> </html> 

下面的代码可以得到你的文本字段的值:

  NSString* value = [webView stringByEvaluatingJavaScriptFromString:@"document.getElementById('myId').value"]; 

您可以轮询页面内的JavaScript函数(使用UIWebView stringByEvaluatingJavascriptFromString:) 。

或者你可以直接从页面调用一个Objective-C方法,使用一些小技巧: UIWEBVIEW SECRETS – PART3 – 如何从JAVASCRIPT中正确调用OBJECTIVEC
(向下滚动到github链接的底部)。

如果HTML响应是这样的话,

 <html> <body> <input id="myId" type="hidden" value="TextValue"/> </body> </html> 

所以你可以在Swift中这样访问,

  var id:String = IBwebView.stringByEvaluatingJavaScriptFromString("document.getElementById('myId').value")! println(id)