Am developing an app which load a HTML page into u开发者_StackOverflow中文版iwebview - 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
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"];
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).
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)
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`
}
精彩评论