問題描述

HTML “select” 元素是否有一個 on select 事件?事件的名稱究竟是什麼?

最佳解決方案

onchange 您正在尋找什麼?

次佳解決方案

還有一點值得一提的是,如果選擇沒有改變,這不會觸發 (看起來不言自明) 。據我所知,當用户下拉選擇框,然後重新選擇原始值時,沒有任何事件觸發。

第三種解決方案

它是 onchange Event

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>

第四種方案

無論輸入類型如何,每當表單輸入更改值時,都應始終拋出 onchange 事件。 (除了按鈕,因為它們不是真的輸入設備) 。

參考文獻

注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇