【问题标题】:Change `<input>` element attributes from objective-C从 Objective-C 更改 `<input>` 元素属性
【发布时间】:2014-03-23 14:26:25
【问题描述】:

我正在尝试将&lt;input type="checkbox"&gt;element 的值从null 更改为checked
我将如何从 Objective-C(iOS 应用程序)执行此操作?

这是页面的相关HTML

<td align="right" width="15%" class="darkNeutral">
    <input id="chk_Assignments" type="checkbox" class="ShowAll" />
    <label for="chk_Assignments">Show All</label>

    &nbsp;&nbsp;
</td>

我在想我会使用POST 什么的,但我不确定如何访问该元素,添加一个checked 属性,并将该属性的值设置为"checked"

【问题讨论】:

  • 基本上,我想“检查”复选框
  • UIWebView 有一个名为 stringByEvaluatingJavaScriptFromString: 的方法,假设您正在 UIWebView 中查看该 HTML,它可以让您实现目标。
  • 请澄清您的问题 - 您到底想达到什么目的?您是否尝试在选中复选框的情况下将数据发布到网页?您是否试图操纵在 UIWebView 中呈现的 HTML?
  • @user3386109 我会调查的
  • @Paulw11 我正在尝试检查复选框,所以请填写&lt;input id="chk_Assignments" type="checkbox" checked="checked" class="ShowAll" /&gt;

标签: html ios objective-c http


【解决方案1】:
NSString *javaScript = @"document.getElementById('chk_Assignments').setAttribute('checked', 'checked');";

// Make the UIWebView method call
NSString *response = [webViewA stringByEvaluatingJavaScriptFromString:javaScript];
NSLog(@"javascript result: %@", response);

如果 HTML 页面包含 jQuery,则 javascript 可以简化:

NSString *javaScript = @"$('#chk_Assignments').attr('checked', 'checked');";
NSString *response = [webViewA stringByEvaluatingJavaScriptFromString:javaScript];
NSLog(@"javascript result: %@", response);

【讨论】:

  • 我首先需要在我的项目中获得一个UIWebView,所以我一到那里就试试这个。谢谢你。此外,这是我试图找出我将在哪里访问数据的地方 -> stackoverflow.com/questions/22588427/…
猜你喜欢
  • 1970-01-01
  • 2010-09-16
  • 1970-01-01
  • 2013-11-30
  • 2021-02-12
  • 2011-10-10
  • 2014-03-11
  • 2015-01-03
  • 1970-01-01
相关资源
最近更新 更多