Как подобное реализовать на чистом 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, время: 09:35. |