Zai*_*han 11 javascript objective-c uiwebview ios swift
我想在ViewController中获取JavaScript返回值,
问题是,如果像String这样的数据很少,我就会得到它.
但是如果有像JSON对象那样的大数据,它显示为零.
当我在Safari> Develop> iOS模拟器中调用相同的JS函数时,它会在1-2秒后给出JSON对象.
这是我的代码:
var value = IBwebView.stringByEvaluatingJavaScriptFromString("get_small_string()")
println(value) //Printing value
Run Code Online (Sandbox Code Playgroud)
但这打印为零,
var value = IBwebView.stringByEvaluatingJavaScriptFromString("get_JSON()")
println(value) //Printing nil
Run Code Online (Sandbox Code Playgroud)
谁知道如何在iOS对象中获取大尺寸JS返回值?
这解决了我的问题,
var value = IBwebView.stringByEvaluatingJavaScriptFromString("get_JSON()")
var err:NSError?
var obj:AnyObject? = NSJSONSerialization.JSONObjectWithData(value!.dataUsingEncoding(NSUTF8StringEncoding)!, options:nil, error:&err)
if let items = obj as? NSDictionary {
var data1:String = items.objectForKey("data1") as? String
var data2:String = items.objectForKey("data2") as? String
var data3:String = items.objectForKey("data3") as? String
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2801 次 |
| 最近记录: |