我正在使用 Excel VBA 填充 Internet Explorer Web 表单。我能够获取成功填写表格的所有信息。但是,表单上的某些字段仍然显示为灰色,您无法对其进行编辑,即使它们的字段中已填充了数据。
以这张图片为例:
看看电话号码是如何填充在字段中但该字段保持灰色的吗?那就是问题所在。我正在寻找一种以编程方式显示该字段的方法,以便它变得可编辑。
因此,我能够通过模拟用户单击某些下拉菜单来修复某些字段的此问题,这通常会显示该字段。然而,这不适用于该领域以及其他一些领域。
这是我尝试使用 Excel VBA 以编程方式显示的字段的 HTML。
<td colspan="1" rowspan="1" align="left">
<input type="hidden" name="p_arg_names" value="97183355576083984700">
<input type="text" id="P1_REPORTED_BY_CONTACT" name="p_t20" value="" size="50" maxlength="255" class="text_field apex_disabled" disabled=""></td>
这是我通常用来将数据从 Excel 填充到表单字段的代码。它将元素 ID 设置为等于其命名的 Excel 范围中的值。
doc.getElementById("P1_REPORTED_BY_CONTACT").Value = Range("ContactForm").Value
“联系信息”字段应如下所示。该字段将变为白色,然后即可编辑。
如果您能给我任何建议/意见,我将不胜感激。或者,如果您知道答案在哪里,请为我指出正确的方向,我会将其删除。经过几天的研究,我找不到这个问题的答案。
最佳答案
使用
启用该字段doc.getElementById("P1_REPORTED_BY_CONTACT").Disabled = False
并将 class="text_field apex_disabled"
更改为 class="text_field"
doc.getElementById("P1_REPORTED_BY_CONTACT").className = "text_field"
使其变白。如果这不起作用,请检查已启用字段的class
,并将该字段设置为相同的类。
关于html - 如何使用 Excel VBA 在 Web 表单上显示灰显的文本字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56582570/