Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   jquery -> js (https://javascript.ru/forum/misc/73859-jquery-js.html)

Nexus 23.05.2018 16:26

SpaceAlarm,
2.
document.addEventListener('DOMContentLoaded', function() {
    const listener = function() {
        let Button = document.querySelector('#form input[name="options"]:checked').value || null;
    };

    [].forEach.call(document.querySelectorAll('#form input'), function(node) {
        ['change', 'input'].forEach(function(event) {
            node.addEventListener(event, listener);
        });
    });
});

Пост №6 поправил, опечатался.

После моих скриптов добавьте этот скрипт и все заработает:
if (document.readyState === 'complete')
    document.dispatchEvent(new Event('DOMContentLoaded'));

рони 23.05.2018 21:01

4.
https://developer.mozilla.org/ru/doc...ement/datalist
html-datalist-values-from-array-in-javascript

Malleys 24.05.2018 03:54

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<meta name="viewport" content="width=device-width">
	</head>
	<body>
		<form id="form">
			<input type="text" id="name_button" list="name-button-list">
			<datalist id="name-button-list"></datalist>
			<input type="checkbox" name="options" checked>
			<input type="checkbox" name="options">
			<input type="checkbox" name="options">
		</form>
		<script>

// Вспомогательные функции, которые помогают 
// найти элемент(-ы) по указанному селектору
// в контексте какого-либо элемента
function $(selector, context = document) {
	return context.querySelector(selector);
}
function $$(selector, context = document) {
	return context.querySelectorAll(selector);
}

// 1
for(const element of $$("#form input[name=options]:checked")) {
	element.value;
}

// 2
document.addEventListener("change", ({ target }) => {
	if(!target.matches("#form input[name=options]:checked")) return;

	/*const Button = */target.value; // значение конкретно того элемента, что поменяли
});

// 3. Обычно не нужно прослушивать событие change,
// когда прослушиваете input.
// Обратите внимание, что у строки "name_button", нет спереди
// символа «решётка», поскольку id возвращает само имя
// идентификатора элемента.
document.addEventListener("DOMContentLoaded", () => {
	document.addEventListener("input", ({ target }) => {
		if(target.id !== "name_button") return;

		const getInput = target.value;
		console.log(getInput);
	});
});

// 4
const getURLmessage = [
	"test",
	"test1",
	"test2",
	"test3"
];

$("#name_button").list.append(...getURLmessage.map(m => new Option(m)));
			
		</script>
	</body>
</html>


Часовой пояс GMT +3, время: 21:39.