Как подобное реализовать на чистом js?
Как подобное реализовать на чистом js, что-бы не прописывать кучу .onchange событий к каждому чекбоксу?
$(document.querySelectorAll('input[type=checkbox]')).change(function(){ console.log(this.value) }) |
че, прям всем всем на странице?
http://javascript.ru/forum/css-html/...tml#post387197 Там не про события, но метод тот же. А лучше использовать делегирование https://learn.javascript.ru/event-delegation |
<body> <div id="div"> <input type="checkbox"> <input type="checkbox"> <input type="checkbox"> <input type="checkbox"> <input type="checkbox"> </div> </body> [JS] <script> var div = document.getElementById('div'); div.addEventListener('change', function (e) { e = e.target || e.srcElement; console.log(e.value) },false) </script> [/JS] |
<html> <head> <meta charset="utf-8"> </head> <body> <input type="checkbox"> <input type="checkbox"> <input type="checkbox"> <input type="checkbox"> <input type="checkbox"> <script> show=function(){alert(1)} ;[].forEach.call(document.querySelectorAll('input[type=checkbox]'), function(box){box.onchange=show}) </script> </body> </html> |
forwardonly2015,
мне кажется он тоже самое сделал только на Jquery |
caetus,
Ну так он и спрашивал, как сделать это на чистом |
tsigel, а зачем в два прохода то?
|
ты прав я невнимательно прочёл )
|
Спасибо, подучился :)
|
Lemme,
Затупил |
Часовой пояс GMT +3, время: 21:43. |