HTML <select> 选择事件的名称是啥?

Posted

技术标签:

【中文标题】HTML <select> 选择事件的名称是啥?【英文标题】:HTML <select> what is the name of on select event?HTML <select> 选择事件的名称是什么? 【发布时间】:2010-09-19 13:41:07 【问题描述】:

html“select”元素是否有 on select 事件?活动的具体名称是什么?

【问题讨论】:

【参考方案1】:

onchange 是你要找的吗?

【讨论】:

【参考方案2】:

还值得一提的是,如果选择没有改变,这不会触发(似乎不言自明)。据我所知,当用户下拉选择框然后重新选择原始值时,不会触发任何事件。

【讨论】:

@wakeless 谢谢,我知道在谷歌上搜索这个边缘案例会很困难。很高兴您能够回答用户选择相同值的问题。【参考方案3】:

我是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>

【讨论】:

世界不是 jQuery。如果 O.P. 没有明确要求 jQuery,可能最好使用通用 JS 响应来响应。【参考方案4】:

无论输入类型如何,只要表单输入更改值,都应始终引发onchange 事件。 (按钮除外,因为它们本身并不是真正的输入设备。)

【讨论】:

值得注意的是,当您使用

以上是关于HTML <select> 选择事件的名称是啥?的主要内容,如果未能解决你的问题,请参考以下文章

选择select里面某个option触发的事件

JQuery 绑定select标签的onchange事件,弹出选择的值,并实现跳转传参

select下拉框选择触发事件

Jquery获取select 控件的change事件时选中的值

js:select的选择改变事件,获取当前选择的值

能否实现html中的<select>自动展开,但是还要保留选择的框