我刚刚开始使用JQuery,但我遇到了一个问题,那就是为动态创建的按钮添加click事件监听器。
因此,当用户单击第一个按钮时,我的第一个功能只是将第二个按钮添加到div中。问题是,使用相同的方法,第二个按钮的侦听器无法正常工作。这是我要执行的操作的一个简单示例。
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script type="text/javascript">
$(document).ready(function(){
//listener for first button
$("#button1").click(function(event){
event.preventDefault();
$("#newElement").append("<input type='button' id='button2' value='Need listener for this new button'>");
});
//listener for the seccond button (problematic one)
$("#button2").click(function(event){
event.preventDefault();
alert("Second button clicked!");
});
});
</script>
<title>Exemple JQuery</title>
</head>
<body>
<input type="button" id="button1" value="Add a new button dynamically">
<div id="newElement">
</div>
</body>
</html>
任何想法都非常欢迎。谢谢
动态插入的元素的委托事件处理程序
$("#newElement").on('click', "#button2", function(event){
event.preventDefault();
alert("Second button clicked!");
});
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句