我刚刚将查询库添加到我的Web应用程序中,并通过简单的警报进行了测试:
<script src="<c:url value="/resources/jquery-1.10.2.min.js" />"></script> <script type="text/javascript"> $(function(){ alert('jquery is working'); }); </script>
并且工作正常。但是,当我想在下拉菜单中实现“更改”事件时
<script src="<c:url value="/resources/jquery-1.10.2.min.js" />"></script> <script type="text/javascript"> $("#projectKey").change(function() { alert($('option:selected', $(this)).text()); }); </script>
它没有显示警报,基本上什么也没发生。我的下拉列表如下:
<select id="projectKey" name="projectKey"> <option value="AM">AM</option> <option value="AIL">AIL</option> <option value="NEB">NEB</option> <option value="SSP">SSP</option> </select>
当然,我尝试简化javascript,
$("#projectKey").change(function() { alert("test"); });
但仍然没有喜悦。选择器或下拉菜单将有所不同。也尝试过“ select#projectKey”,但结果当然是相同的。知道我在做什么错吗?
您应该保留DOM ready函数
$(function() { $("#projectKey").change(function() { alert( $('option:selected', this).text() ); }); });
如果您在DOM中的元素之前添加了javascript,则文档尚未准备好,您必须使用DOM ready函数或在元素之后添加javascript,通常的位置就在</body>标记之前
</body>