HTML <select>как называется событие select? - PullRequest
39 голосов
/ 28 октября 2008

Есть ли в элементе HTML "select" событие on select? какое именно название мероприятия?

Ответы [ 4 ]

61 голосов
/ 28 октября 2008

Является ли onchange тем, что вы ищете?

25 голосов
/ 27 мая 2009

Стоит также упомянуть, что это не срабатывает, если выбор не изменяется (кажется самоочевидным). Насколько я знаю, нет события, которое срабатывает, когда пользователь опускает поле выбора и затем повторно выбирает исходное значение.

20 голосов
/ 28 октября 2008

Событие onchange .

jQuery переносит его в помощник .change. Если вы используете простой Javascript, используйте addEventListner('change', function...):

<html>
<head>
    <script type="text/javascript" src="jquery-1.2.6.js"></script>
    <script type="text/javascript">

// If using jQuery
$(document).ready( function() {
    $("#list").attr( "selectedIndex", -1 );
    $("#list").change( function() {
        $("#answer").text( $("#list option:selected").val() );
    });
});
    </script>

    <script type="text/javascript">

// Plain Javascript:
document.addEventListener('DOMContentLoaded', function(event) {
    var selectList = document.getElementById("list");
    var divAnswer  = document.getElementById("answer");
    selectList.addEventListener("change", function(changeEvent) {
        divAnswer.textContent = selectList.value;
    });
});
    </script>

</head>
<body>
    <div id="answer">No answer</div>
    <form>
        Answer
        <select id="list">
            <option value="Answer A">A</option>
            <option value="Answer B">B</option>
            <option value="Answer C">C</option>
        </select>
    </form>
</body>
</html>
3 голосов
/ 28 октября 2008

Независимо от типа ввода, всякий раз, когда ввод формы изменяет значение, всегда должно генерироваться событие onchange. (За исключением кнопок, поскольку они не являются устройствами ввода как таковыми.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...