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

发布于 2024-11-06 02:21:50 字数 134 浏览 1 评论 0原文

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

这里如何获取用户在该文本字段中输入的值以及从 drop 中选择的答案-向下(选择器)。

谢谢

Am developing an app which load a HTML page into uiwebview - that html file contains text-filed and drop-down list, text-boxes etc..

Here How to get values which user has entered in that text-filed and answers selected from drop-down(picker).

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

执笔绘流年 2024-11-13 02:21:50

您可以使用 [UIWebView stringByEvaluatingJavascriptFromString:] 方法并通过执行 javascript 获取值。

例子:
如果您的 html 是:

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

以下代码可以获取文本字段的值:

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

You can use [UIWebView stringByEvaluatingJavascriptFromString:] method and get the values by executing the javascript.

Example:
If your html is:

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

Following code can get you the value of the text field:

   NSString* value = [webView stringByEvaluatingJavaScriptFromString:@"document.getElementById('myId').value"];
孤城病女 2024-11-13 02:21:50

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

或者您可以使用一些小技巧直接从页面调用 Objective-C 方法: UIWEBVIEW 秘密 - 第 3 部分 - 如何从 JAVASCRIPT 正确调用 OBJECTIVEC

(向下滚动到底部查看 github 链接)。

You can either poll a javascript function inside the page (using UIWebView stringByEvaluatingJavascriptFromString:).

Or you could call an objective-c method directly from the page using a little hack: UIWEBVIEW SECRETS - PART3 - HOW TO PROPERLY CALL OBJECTIVEC FROM JAVASCRIPT

(scroll down to the bottom for github-link).

天邊彩虹 2024-11-13 02:21:50

如果HTML响应是这样的,

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

那么你可以在Swift中这样访问,

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

If HTML response is this,

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

So you can access like this in Swift,

  var id:String = IBwebView.stringByEvaluatingJavaScriptFromString("document.getElementById('myId').value")!
  println(id)
奈何桥上唱咆哮 2024-11-13 02:21:50

对于新的 WKWebView 类,给出以下响应:

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

您可以在 Swift 中像这样访问它:

view.evaluateJavaScript("document.getElementById('myId').value") { result, _ in
    // do something with `result`
}

With the new WKWebView class, given this response:

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

You'd access it like this in Swift:

view.evaluateJavaScript("document.getElementById('myId').value") { result, _ in
    // do something with `result`
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文