首页 新闻 会员 周边 捐助

js调用oc后,执行oc方法(block里面),web数据没变!

0
[已解决问题] 解决于 2021-06-16 11:30

 

-(void)webViewDidFinishLoad:(UIWebView *)webView { //saveUser submit
// 初始化content
self.context = [webView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"];

__weak typeof(self) weakSelf = self;
self.context[@"saveUser"] = ^{
    NSArray *arg = [JSContext currentArguments];
    for (id obj in arg) {
        NSLog(@"obj is:%@", obj);
    }

    //保存 信息
    dispatch_async(dispatch_get_main_queue(), ^{
        [weakSelf.navigationController popViewControllerAnimated:YES];

        //只显示文字
        MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:APP_SCREENWINDOW animated:YES];
        hud.mode = MBProgressHUDModeText;
        hud.label.text = @"保存成功!";
        hud.margin = 10.f;
        hud.offset = CGPointMake(0, 0.f);
        hud.removeFromSuperViewOnHide = YES;
        [hud hideAnimated:YES afterDelay:1.5f];
        hud.userInteractionEnabled = NO;
    });

};

}

 

 

获取到点击事件 后,web端的数据 没保存。。 怎么回事?

self.context[@"saveUser"] 不操作 这个 数据会保存。。 是web那边写的时候 没做ios处理?

goyohol的主页 goyohol | 菜鸟二级 | 园豆:229
提问于:2017-10-31 14:59
< >
分享
最佳答案
0

自己解决了!写一个对象(满足 继承与JSExport的协议),配合ajax,截取ajax里的函数及返回参数。

goyohol | 菜鸟二级 |园豆:229 | 2017-11-08 12:52
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册