我有一个奇怪的问题,我正在使用jQuery函数(单击)将操作绑定到按钮,当我单击按钮时没有任何反应,怎么回事!这里是我正在使用的代码:`
<script >
$( '#admin' ).live( 'pageinit',function(event){
$('#AddButton').click(function(){
alert("Clicked")
});
});
</script>
答案 0 :(得分:2)
假设按钮存在于初始页面源中,您需要:
<script>
块放在按钮后面的源中的某个位置,或$(document).ready()
处理程序中。否则当JS运行时浏览器不会解析按钮的html,因此找不到该按钮。
如果该按钮最初不存在,即您要动态添加它以响应其他事件,则可以使用:
$('#AddButton').live('click', function(){ ...
...类似于您已经为admin
元素执行的操作,处理程序将在按钮存在后自动应用于该按钮。
请注意,虽然从jQuery 1.7版本开始不推荐使用.live()
,但如果使用1.7,则应使用.on()
method,即使在较旧的jQuery中,.delegate()
method也是首选。 API doco for .live()
解释了如何转换。