Javascript 获取要传递到第二个函数的选定下拉菜单值

Javascript 获取要传递到第二个函数的选定下拉菜单值,javascript,html,Javascript,Html,我有一些代码来生成一个下拉菜单,它的内容来自一个数组。那部分正在发挥作用。但是,当用户单击其中一个菜单元素时,我需要将从下拉菜单中选择的值传递到我的populateJobVal()函数中,以便将该值打印到输入字段中。现在,当我运行此代码时,输出到输入字段的是[object htmlulliselement] 我假设我在这里需要做的就是将正确的值传递给我的populateJobVal(),但是,到目前为止,它并没有按预期工作。我已尝试按如下方式调整代码: a.setAttribute('oncli

我有一些代码来生成一个下拉菜单,它的内容来自一个数组。那部分正在发挥作用。但是,当用户单击其中一个菜单元素时,我需要将从下拉菜单中选择的值传递到我的
populateJobVal()
函数中,以便将该值打印到输入字段中。现在,当我运行此代码时,输出到输入字段的是
[object htmlulliselement]

我假设我在这里需要做的就是将正确的值传递给我的
populateJobVal()
,但是,到目前为止,它并没有按预期工作。我已尝试按如下方式调整代码:

a.setAttribute('onclick','populateJobVal(opt)')

。。。但是,在这种情况下,根本不会向输入字段打印任何内容。我需要在这里通过什么?还是我遗漏了什么

  <script>
    let select = document.getElementById("selectJob");
    let options = ["Job 1", "Job 2", "Job 3", "Job 4", "Job 5"];
    for (let i = 0; i < options.length; i++) {
      let opt = options[i];
      let a = document.createElement("a");
      a.textContent = opt;
      a.setAttribute('href', '#');
      a.setAttribute('onclick', 'populateJobVal(selectJob)'); // What to pass here?
      a.setAttribute('class', 'btn btn-link');
      let li = document.createElement("li");
      li.appendChild(a);
      select.appendChild(li);
    }

    function populateJobVal(val) {
      document.getElementById("selection").value = val;
    }

  </script>

让select=document.getElementById(“selectJob”);
让选项=[“作业1”、“作业2”、“作业3”、“作业4”、“作业5”];
for(设i=0;i
我的相关HTML代码如下所示:

  <div class="dropdown">
    <button class="btn btn-default btn-primary dropdown-toggle" type="button" data-toggle="dropdown">
      Select Job Type to Schedule
      <span class="caret"></span></button>
    <ul class="dropdown-menu" id="selectJob">
    </ul>
  </div>

选择要计划的作业类型

我更改了添加click事件的方式,这样传递
opt
参数就容易多了。前一种方法是传递整个列表

替换

a.setAttribute('onclick', 'populateJobVal(opt)'); 

let select=document.getElementById(“selectJob”);
让选项=[“作业1”、“作业2”、“作业3”、“作业4”、“作业5”];
for(设i=0;i{
populateJobVal(opt)
})看这里
a、 setAttribute('class','btn-btn-link');
设li=document.createElement(“li”);
李.儿童(a);
选择.appendChild(li);
}
函数populateJobVal(val){
调试器
document.getElementById(“selectJob”).value=val;
}

选择要计划的作业类型
 a.addEventListener('click', () => {
    populateJobVal(opt)
 }); // Look here