[英]iphone - Getting data from uiwebview textfield
我正在開發一個將 HTML 頁面加載到 uiwebview 的應用程序 - html 文件包含文本文件和下拉列表、文本框等。
此處如何獲取用戶在該文本文件中輸入的值以及從下拉列表(選擇器)中選擇的答案。
謝謝
您可以使用[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-link的底部)。
如果是這樣的HTML響應,
<html>
<body>
<input id="myId" type="hidden" value="TextValue"/>
</body>
</html>
所以你可以在Swift中這樣訪問,
var id:String = IBwebView.stringByEvaluatingJavaScriptFromString("document.getElementById('myId').value")!
println(id)
使用新的WKWebView
class,給出以下響應:
<html>
<body>
<input id="myId" type="text" value="TextValue"/>
</body>
</html>
您可以在 Swift 中像這樣訪問它:
view.evaluateJavaScript("document.getElementById('myId').value") { result, _ in
// do something with `result`
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.