选择特定选项后显示隐藏字段
Posted
技术标签:
【中文标题】选择特定选项后显示隐藏字段【英文标题】:Show hidden fields after selecting particular option 【发布时间】:2016-07-06 12:32:18 【问题描述】:我想写一个书签之类的东西,它会在点击时执行并自动填充值。
我可以通过
选择值document.getElementById('component').value="IAE-Data Agent";
document.getElementById('component').onchange();
但它不显示隐藏字段。这是在该选择框之后的页面中编写的 javascript 代码,我认为在手动选择框后会显示该字段。
showFieldWhen('cf_agents',
'component', ['IAE-Data Agent']);
我尝试了执行该函数和许多其他方法,但仍然没有显示这些字段。
手动选择前(字段隐藏时)
<th class="field_label bz_hidden_field" id="field_label_cf_agents">
<label for="cf_agents">
<a title="A custom Free Text field in this installation of Bugzilla." class="field_help_link" href="page.cgi?id=fields.html#cf_agents">Agent Class Name:</a>
</label>
</th>
字段显示后:
<th class="field_label" id="field_label_cf_agents">
<label for="cf_agents">
<a title="A custom Free Text field in this installation of Bugzilla." class="field_help_link" href="page.cgi?id=fields.html#cf_agents">Agent Class Name:</a>
</label>
</th>
只有类属性发生变化。我尝试了很多方法,但仍然通过脚本我无法做到。
当我使用 selenium 脚本时
Select dropdown = new Select(driver.findElement(By.id("component")));
dropdown.selectByValue("IAE-Data Agent");
我可以看到隐藏的字段正在显示。但这不可行,因为我不想运行 java 应用程序来完成任务。
可以尝试哪些其他方式来显示这些字段。如果 javascript 代码不起作用,是否可以通过书签或其他方式执行 selenium 代码来完成它。
【问题讨论】:
我想出了一个我们使用代码的方法 document.getElementById('field_label_cf_agents').className="field_value";直接改类名 如果您已经解决了自己的问题,请发布答案并“接受”它 - 这对后代来说是显而易见的。 【参考方案1】:由于选择选项框后字段的类属性发生变化。我直接使用了代码
document.getElementById('field_label_cf_agents').className="field_value";
此代码直接更改了类名属性,因此显示了该字段。
【讨论】:
以上是关于选择特定选项后显示隐藏字段的主要内容,如果未能解决你的问题,请参考以下文章
如何使 jQuery 自动完成列表显示所有选项 onfocus 并在选择选项后隐藏?
显示 UIPickerView 文本字段被选中,然后在选中后隐藏