我有按钮的UserControl。我正在尝试使用jQuery捕获此按钮的单击事件。 我在ascx中的代码:
<link type="text/css" href="css/jquery-ui-1.8.22.custom.css" rel="stylesheet" />
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="js/jquery-ui-1.8.22.custom.min.js"></script>
<script type="text/javascript" src="js/myjQueryCode.js"></script>
<button id="test-button">Test</button>
myjQueryCode.js中的代码。
我试过这个:
$('#test-button').bind('click', function() {
alert("123");
});
和此:
$("[id$=test-button]")
.button()
.click(function() {
alert("123");
});
和此:
$('#test-button')
.button()
.click(function() {
alert("123");
});
什么都不起作用。
答案 0 :(得分:2)
您是否尝试将代码放入$(document).ready()
内?
试试这个:
$(document).ready(function(){
$('#test-button').bind('click', function() {
alert("123");
});
});
答案 1 :(得分:1)
应该是:
$('#test-button').click(function () {
console.log('Click activated.');
});
确保代码可以实际执行。例如,将语句包装在执行的函数中,如下所示:
(function () {
// Write code here
}());
或者在文档准备就绪后执行,如下所示:
$(document).ready(function () {
// Write code here
});
答案 2 :(得分:0)
尝试将您的脚本代码放在html代码之后 - 也许这会有所帮助......
答案 3 :(得分:0)
您的jQuery代码在元素存在之前执行(因为<script>
标记位于按钮的HTML之前),因此您需要将其包装在DOM ready事件处理程序中。像这样:
$(document).ready(function() {
$('#test-button').bind('click', function() {
alert("123");
});
});
有关详细信息,请查看.ready()
函数和Getting Started with jQuery教程的API文档。
答案 4 :(得分:0)
使用jQuery的第一种方法,而不是引用.button()在jsfiddle中工作:http://jsfiddle.net/Cd5Qj/
因此,您可能在脚本标记中找到了错误的jQuery库路径,或者您没有将代码包含在jQuery块中,如:
$(function(){
... //code here
});
...或者我们无法检查一些冲突,因为这里没有显示更多代码。