<!doctype html>
<html>
<head>
<title>test</title>
<meta charset="UTF-8">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script>
$(document).ready(function() {
$('#main_body').append("<h1>Hello</h1><input id=\"but\" type=\"button\">Click");
$("#but").on("click", function() {
alert("bla bla");
});
});
</script>
</head>
<body id="main_body"></body>
</html>
为什么在添加DOM元素后警报不起作用?应该在单击后显示“bla bla”。
解决方案
主要问题出在这里:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
我认为jQuery版本太旧了。
<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
解决了问题 :)