gpt4 book ai didi

javascript - 我可以在 UIWebViewDelegate 中处理警报吗?

转载 作者:行者123 更新时间:2023-11-30 06:26:00 24 4
gpt4 key购买 nike

<script language="javascript">
alert("Hell! UIWebView!");
</script>

我可以在我的 UIWebView 中看到警告消息,但是我可以处理这种情况吗?

更新:

我正在将网页加载到我的 UIWebView 中:

- (void)login {
NSString *requestText = [[NSString alloc] initWithFormat: @"%@?user=%@&password=%@", DEFAULT_URL, user.name, user.password]; // YES, I'm using GET request to send password :)
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:requestText]];
[webView loadRequest:request];
}

目标页面包含一个JS。如果用户名或密码不正确,此 JS 显示警报。我无权访问其来源。我想在我的 UIWebViewDelegate 中处理它。

最佳答案

这个问题更好的解决办法是为方法创建一个UIWebView的Category

webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:

这样您就可以按照您喜欢的任何方式处理警报事件。我这样做是因为我不喜欢 UIWebView 将源文件名放在 UIAlertView 标题中时的默认行为。类别看起来像这样,

@interface UIWebView (JavaScriptAlert) 

- (void)webView:(UIWebView *)sender runJavaScriptAlertPanelWithMessage:(NSString *)message initiatedByFrame:(WebFrame *)frame;

@end

@implementation UIWebView (JavaScriptAlert)

- (void)webView:(UIWebView *)sender runJavaScriptAlertPanelWithMessage:(NSString *)message initiatedByFrame:(WebFrame *)frame {
UIAlertView* dialogue = [[UIAlertView alloc] initWithTitle:nil message:message delegate:nil cancelButtonTitle:@"Okay" otherButtonTitles:nil];
[dialogue show];
[dialogue autorelease];
}

@end

关于javascript - 我可以在 UIWebViewDelegate 中处理警报吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21070399/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com