未在选项_.each中添加addEventListener

时间:2019-09-04 14:44:04

标签: javascript addeventlistener

我正在尝试将事件侦听器添加到select标记中的每个选项。仅当queryselector找到选项时才添加事件侦听器。一切正常,直到我尝试将其添加到eventListener。

我能够看到_.each循环遍历每个选项,所以我知道我正在访问标记。注释掉的代码是我用来确保其他部分正常工作的代码。我什至没有收到无法添加该事件的错误。

<SELECT>
<OPTION class="renewal_action">convert</OPTION>
<OPTION class="renewal_action">expire</OPTION>
</SELECT>
let renew_action_select = row_node.querySelectorAll('.renewal_action')
    console.log(renew_action_select)
    if(renew_action_select.length){
        _.each(renew_action_select, function(renew_action){
            console.log(renew_action)
            renew_action.addEventListener('click', function()
                {
                    console.log('in renew')

                })
            }
        )
    }

当我单击选项之一以确认该事件已添加但没有任何反应时,我希望在控制台中收到一条消息。没有错误消息让我知道该事件尚未添加。

1 个答案:

答案 0 :(得分:2)

const select = document.querySelector('select');

select.addEventListener('change', function () {
  console.log(select.value);
})
<select>
  <option>convert</option>
  <option>expire</option>
</select>