我需要访问在脚本
中的try块内声明的javascript变量var ErrorResponse = "";
在我的iOS应用中。我不太了解javascript,这就是为什么我无法找到方法来做到这一点。我正在使用这个:
NSString *jsString = @"var temp = ErrorResponse; return temp";
NSString *myFieldValue1 = [self.viewYTParser stringByEvaluatingJavaScriptFromString:jsString];
检索值,但返回一个空字符串。
答案 0 :(得分:3)
以下是应该发挥魔力的代码:
NSString *errorResponse = [self.viewYTParser stringByEvaluatingJavaScriptFromString:@"ErrorResponse"];
每次需要检索ErrorResponse
的最新值时,只需执行此行。
您不应使用return
关键字
如果你希望你的JS从stringByEvaluatingJavaScriptFromString
返回任何值,那么它应该是你经常在常规JS函数中 return
关键字之后写的东西 - 没有{{1单词本身。
答案 1 :(得分:0)
// simplified expression, no function needed
NSString *expr = @"document.getElementById('myDiv').offsetHeight / document.getElementById('myDiv').style.lineHeight";
// now pass it to the web view and parse the result
int lines = [[self.webView stringByEvaluatingJavaScriptFromString:expr] intValue];