模拟下拉菜单选择 javascript

Simulate dropdown menu selection javascript

网站上有这个下拉菜单,看起来像:

<form id="birthday-form" action="#" method="get">
  <select class="month">
    <option value="">Month</option>
    <option value="1">January</option>
    <option value="2">February</option>
  </select>
  <select class="day">
    <option value="">Day</option>
    <option value="1">1</option>
    <option value="2">2</option>
  </select>
  <select class="year">
    <option value="">Year</option>
    <option value="2005">2005</option>
    <option value="2004">2004</option>
    <option value="2003">2003</option>
  </select>
</form>

现在我需要将 selection 模拟到这种形式。我使用这个 javascript 来这样做:

 document.getElementsByClassName('month')[0].value = '1'; document.getElementsByClassName('day')[0].value = '1'; document.getElementsByClassName('year')[0].value = '2005';

所以这在输入数据的意义上是有效的,但是,除非我手动单击它,否则表单不会提交。换句话说,表格显示 2005 年 1 月 1 日 selected,但表现得好像没有 selection。正如您在 this 照片中所见,继续按钮被禁用(变灰),但在单击鼠标时变为启用,例如二月选项。

我相信我的问题与 How to click a dropdown menu and select option? 类似,但是,原始问题似乎从未得到回答,因为没有任何内容得到批准,而且我能找到的任何代码都不起作用。所以,我的问题是:如何从这个表单中 select 选项并触发一些东西来启用继续按钮。

感谢您的帮助,如果我的 post 需要编辑,请告诉我。

尝试在 select 元素之一上触发 change 事件并查看是否启用 "Continue" 按钮。按照您已经完成的方式设置值。然后,触发一个 change 事件并查看按钮是否激活。

以下是有关如何触发事件的一些信息:https://plainjs.com/javascript/events/trigger-an-event-11/