以编程方式处理 uiwebview 中的文本字段

发布于 2024-10-31 12:16:29 字数 240 浏览 1 评论 0原文

我有一个带有文本字段和提交按钮的网页。该网页是在 UIWebView 中加载的。

我如何以编程方式按下该网页的提交按钮?

或者,我如何以编程方式使网页内的文本字段成为第一响应者并显示软键盘?只需以编程方式重新创建相同的行为,就好像用户触摸了网页上的文本字段一样。

我想假设该页面的来源未知。

这不是 UITextField,它只是 UIWebView 中显示的网页内的一个。

提前致谢。

I have a webpage with a text field and a submit button. That webpage is loaded within a UIWebView.

How would I programmatically press the submit button for that webpage?

Alternatively, how would I programmatically make the text field within the webpage the first responder and display the soft keyboard? Just programmatically re-create the same behavior as if the user had touched the text field on the webpage.

I would like to make the assumption that the source of the page is unknown.

This is not a UITextField it is just a within the webpage that is displayed in a UIWebView.

Thanks in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

帅冕 2024-11-07 12:16:29

如果你知道页面的来源,你可以使用UIWebView的stringByEvaluatingJavascriptFromString。例如:

NSString *focusTextField = @"document.getElementById('textFieldID').focus();";
[webView stringByEvaluatingJavascriptFromString:focusTextField];

If you know the source of the page, you can use UIWebView's stringByEvaluatingJavascriptFromString. For example:

NSString *focusTextField = @"document.getElementById('textFieldID').focus();";
[webView stringByEvaluatingJavascriptFromString:focusTextField];

春风十里 2024-11-07 12:16:29

我不确定我的问题是否清楚,但这是对我有用的答案:

jScriptString = [NSString stringWithFormat:@"var field = document.activeElement;" 
                     "field.value='%@';", symbol.data];
    [myWebView stringByEvaluatingJavaScriptFromString:jScriptString];
    jScriptString = [NSString stringWithFormat:@"document.activeElement.form.submit();"];
    [myWebView stringByEvaluatingJavaScriptFromString:jScriptString];

I'm not sure if my question was clear, but this was the answer that worked for me:

jScriptString = [NSString stringWithFormat:@"var field = document.activeElement;" 
                     "field.value='%@';", symbol.data];
    [myWebView stringByEvaluatingJavaScriptFromString:jScriptString];
    jScriptString = [NSString stringWithFormat:@"document.activeElement.form.submit();"];
    [myWebView stringByEvaluatingJavaScriptFromString:jScriptString];
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文