Jangwenyi
问问题
48944 次
4 回答
62
是onchange
你要找的吗?
于 2008-10-28T11:45:56.263 回答
25
还值得一提的是,如果选择没有改变,这不会触发(似乎不言自明)。据我所知,当用户下拉选择框然后重新选择原始值时,不会触发任何事件。
于 2009-05-27T02:49:04.810 回答
20
这是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>
于 2008-10-28T12:06:53.523 回答
3
无论输入类型如何,每当表单输入更改值时,onchange
都应始终引发事件。(按钮除外,因为它们本身并不是真正的输入设备。)
于 2008-10-28T11:48:07.853 回答