【发布时间】:2013-01-24 15:08:24
【问题描述】:
我知道这个问题被问了很多,但似乎对我没有任何帮助。我已经阅读了很多问题和答案。
我正在使用 JQuery 事件来处理 ASP.NET 控件的事件,但该事件不会触发。
这是我尝试过的:
我的下拉列表:
<asp:DropDownList ID="List_ValueStream" runat="server" Width="195px" />
我尝试将事件添加到 DropDownList,都单独测试:
在:
<script src="http://code.jquery.com/jquery.min.js" type="text/javascript">
...
</script>
/
$(document).ready(function () {
$("#<%=List_ValueStream.ClientID%>").change(function () {
alert('1 Handler for .change() called.');
});
});
/
$(document).ready(function () {
$("#List_ValueStream").change(function () {
alert('2 Handler for .change() called.');
});
});
/
$(document).ready(function () {
$("#List_ValueStream").on('change', function () {
alert('3 Handler for .change() called.');
});
});
/
$("#<%=List_ValueStream.ClientID%>").change(function () {
alert('4 Handler for .change() called.');
});
/
$("#List_ValueStream").change(function () {
alert('5 Handler for .change() called.');
});
【问题讨论】:
-
你试过删除 runat="server" 吗?您是否在 chrome/ff/IE 开发者控制台中遇到任何错误?
-
当你在浏览器中查看页面的HTML源代码时,
id实际上是List_ValueStream吗?你会看控制台检查 JavaScript 错误吗? -
是否可以使用简单的
<select id="List_ValueStream"> -
这就是他尝试使用
ClientID的原因 -
<script></script>标签内的$(document).ready()代码是用于加载 jQuery 还是在单独的<script>标签内?如果是前者,请将其移至其自己的<script>标签。