在下拉菜单上帮助jquery onchange事件

时间:2011-05-22 21:37:36

标签: jquery select drop-down-menu

我希望每次更改下拉列表的值时都能启动警报消息。我认为下面的代码应该有效但不是出于某些不明原因。有什么想法吗?

感谢。

<html>
<head>
<script type="text/javascript" src="lib/jquery.js"></script>
</head>
<body>

<script type="text/javascript">
    $("select").change(function(){
        alert(this.id);
    });
</script>


<select>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
</select>

</body>
</html>

3 个答案:

答案 0 :(得分:13)

代码很好,你只是没有正确初始化。

...试

$(document).ready(function() {
    $("select").change(function(){
        alert(this.id);
    });
});

请参阅文档here

您的函数会提醒id元素的select(您尚未分配任何内容)。我假设你真的想从下拉列表中获得价值?在这种情况下你想要:

alert($(this).val());

答案 1 :(得分:3)

在页面加载完成后,注册onchange处理程序。

$(function() {

   $("select").change(function(event) {
        alert(this.id);
        // alert( $(this).attr('id') ); to get the id attr with jquery
    });

});

我还建议使用id定位select元素。每次页面上的任何选择更改时,您的代码都会显示警告。

答案 2 :(得分:0)

$(document).ready(function(){
$("#projectsName").change(function(){
       alert("HI");
});

});

请注意,projectName是下拉列表的ID 并且没有其他具有相同名称的ID 其他明智的jquery将无法正常工作 还要仔细检查你的jquery插件