我有一个具有radio button
s或check box
es的部分的内部。我想要做的是获取单击的单选按钮或复选框。现在,最初在页面加载时我可以获取按钮,但是当我转到下一个局部页面时,我将无法获取新按钮。每当在单独的js中单击某个按钮时,如何获得新的部分按钮。如果我将onclick
函数与radio button
或checkbox
内联,则可以正确调用该函数,但我想将当前显示的元素保存在单独的js文件中。
我尝试使用window.addEventListener('change')
。如果使用此功能,则第一次单击时不会调用该函数,但在随后的单击中会调用该函数多次,即,第二次单击时,函数调用一次,第三次单击时,函数调用两次,依此类推。
// window.addEventListener('change', () => { window.addEventListener('DOMContentLoaded', () => { if (document.querySelectorAll('[name="question[answer_id]"]').length !== 0) { document.querySelectorAll('[name="question[answer_id]"]').forEach((questionAnswerButton) => { questionAnswerButton.addEventListener('click', (event) => { console.log(event); fetchCall(event.target.value); }); }); } });
radio_button_partial.html.erb
<%= radio_button_tag 'question[answer_id]', answer.id, (user_answer == answer.id), { class: 'answer_opt', // onclick: fetchCall("<%= answer.id %>") } %>
这里,如果我取消注释onclick函数,那么我将获得所需的功能。但是,从单独的js文件中获得当前显示的单选按钮时,该如何更改?
我在一个局部里面有一个单选按钮或复选框。我想要做的是获取单击的单选按钮或复选框。现在最初加载页面时,我可以...
而不是将侦听器直接附加到要使用事件冒泡的元素上: