gpt4 book ai didi

iphone - UIWebView - stringByEvaluatingJavaScriptFromString - 不更改文本框值

转载 作者:行者123 更新时间:2023-12-03 19:02:42 27 4
gpt4 key购买 nike

为什么这段代码不起作用?它显示 Google 屏幕,但不会更改文本框值。我通过在 Safari 中运行 JS 来确认它确实可以工作,并且该代码似乎可以工作,因为运行alert('hi') 确实可以工作。

NSURL *web_url = [NSURL URLWithString:@"http://www.google.com"];
NSURLRequest *web_request = [NSURLRequest requestWithURL:web_url];
[web_screen loadRequest:web_request];
NSString *js_result = [web_screen stringByEvaluatingJavaScriptFromString:@"document.getElementsByTagName('input')[1].value='test';"];

最佳答案

只是对之前的答案进行扩展。您需要通过设置 UIWebView 的 delegate 属性来遵守 UIWebViewDelegate 协议(protocol),如下所示:


web_screen.delegate = self;

然后,您可以实现委托(delegate)方法之一来了解请求何时完成加载,从而准备好运行脚本,如下所示:

 - (void)webViewDidFinishLoad:(UIWebView *)webView {  NSString *js_result = [webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByTagName('input')[1].value='test';"]; }

有关 UIWebViewDelegate 协议(protocol)的更多信息,请访问 Apple 网站 http://developer.apple.com/library/ios/#documentation/uikit/reference/UIWebViewDelegate_Protocol/Reference/Reference.html

关于iphone - UIWebView - stringByEvaluatingJavaScriptFromString - 不更改文本框值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/766627/

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