UIWebview中 js 的执行结果返回给OC ,js 回传OC

在UIWebview中,有这个方法

stringByEvaluatingJavaScriptFromString

可以将JS 传进web里面,实现js 想要的东西。


但一直以来,只知道进去,却不知道如何将值传出来,看了stringByEvaluatingJavaScriptFromString 他的头文件后,发现他是会返回nsstring的,于是着手测试他会返回哪些东西。

如以下测试程序,网页会先弹出一个选择框,如果你选了cancle ,他会输出101,如果选了确认,则会输出90,如此,大概可以知道它会返回执行的最后一行 非命令 的字符串了。

   str = [webView stringByEvaluatingJavaScriptFromString:@"var a = confirm(\"我也爱看!\");if(a)alert(\"asd\");if(a) { 90}else{101}"];

    NSLog(@"b%@",str);


另外,在网上看到其它做法,实现 js  中调用 oc 的方法,当然这是一种取巧的虚的方法,原理是当按下网页的连接时都会触发这个代理 shouldStartLoadWithRequest然后通过判断URL字符串的内容来调用对应的oc方法。具体见此链接:http://code4app.com/snippets/one/UIWebView%E4%B8%ADHtml%E4%B8%AD%E7%94%A8JS%E8%B0%83%E7%94%A8OC%E6%96%B9%E6%B3%95%E5%8F%8AOC%E6%89%A7%E8%A1%8CJS%E4%BB%A3%E7%A0%81/546d7ba6933bf03d0a8b4ccd

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值