stringByEvaluatingJavaScriptFromString没有返回值

时间:2012-02-27 10:49:16

标签: javascript objective-c

我在下面有这个JS代码,我正在尝试从中获取返回值。我正在使用stringByEvaluatingJavaScriptFromString来“退出”字符串。调用警报,但我没有得到任何返回值。

NSString *backString = [self.webView stringByEvaluatingJavaScriptFromString:@"goBack();"];

JS代码有什么问题吗?

function goBack() {
        var currentpage = $('.current').attr('id'); 
        var params=window.location.hash;

            if (params != '#home') {
                window.history.go(-1);
            }else{
                alert("exit");
                return "exit";
            }
}

1 个答案:

答案 0 :(得分:0)

我注意到您没有引用变量currentpage。这是一个问题吗?

我还通过使用我尚未定义的js调用调用stringByEvaluatingJavaScriptFromString来收到一个空字符串。

我的解决方案由两部分组成:

  1. 确保您的UIWebView通过- (void)webViewDidFinishLoad:(UIWebView *)webView
  2. 的异步回调完全加载
  3. 确保您的javascript函数不包含任何错误。
  4. 希望有所帮助。