嗨,我是javascript的新手,但我想自动化一个简单的Web表单,其中包括2个下拉列表。在第一个下拉列表中选择一项后,第二个下拉列表应会出现。
我使用以下代码在Chrome浏览器的控制台中运行,以从第一个下拉列表中选择值“迪拜”:
document.querySelector(".trigger-section select").selectedIndex = 4;
但是它仅从第一个下拉列表中选择一个选项,而不生成第二个下拉列表。第二个下拉列表保持不可见。
当我通过鼠标单击第一个下拉列表中的一个选项时,第二个列表就会生成,没有任何问题。但是,当我运行脚本时,它只会首先选择一个选项,然后停止。
以下是从InspectElement提取的下拉列表元素的HTML代码:
<triggersection mode="visibility" question="unrateable_explanation" class="trigger-section" webpage-id="unrateable_explanation" style="">
<h4>Select the country</h4>
<div style="margin:0 0 10px 20px">
<listboxquestion name="unrateable_explanation" class="question-element list-box-question" webpage-id="unrateable_explanation" required-question="true">
<aside>
<div class="required-question-indicator">
</div>
</aside>
<div>
<select><option value="Select One">Select One</option>
<option value="1">Norway</option>
<option value="2">Ireland</option>
<option value="3">India</option>
<option value="4">Dubai</option>
</select>
</div>
</listboxquestion>
<triggersection mode="visibility" question="unrateable_explanation_dubai" class="trigger-section" webpage-id="unrateable_explanation_dubai" style="">
<listboxquestion name="unrateable_explanation_dubai" class="question-element list-box-question" webpage-id="unrateable_explanation_dubai">
<aside>
<div class="required-question-indicator">
</div>
</aside>
<div>
<select>
<option value="Select One">Select One</option>
<option value="1">Seoul/option>
<option value="2">Oocla</option>
<option value="3">Pdpd</option>
<option value="4">Algeria</option>
<option value="5">Gaba</option>
<option value="6">Adaq</option>
<option value="0">Osmania</option>
</select>
</div>
</listboxquestion>
</triggersection>
</triggersection>
我还注意到,当我在以下代码中通过鼠标单击时,此 required-question =“ true” 不存在,但在运行脚本时存在。
<listboxquestion name="unrateable_explanation" class="question-element list-box-question" webpage-id="unrateable_explanation">
但是,当我尝试通过浏览器控制台中的javascript代码进行访问时,该代码中就会包含该代码。不确定将其设置为“ false”将生成第二个列表。我不知道该怎么做。此外,没有“ id”标签,而是“ webpage-id”标签,因此我不确定是否可以将其用作元素的“ id”。
我想从第一个列表中选择选项,并且应该生成第二个列表。有人可以推荐一些可以解决此问题的东西吗?