Я хочу добавить дескриптор события в элемент, который будет создан позже в DOM.
В основном, я пытаюсь сделать так, что, когда я нажимаю p#one
, будет создан новый элемент p#two
, затем я нажимаю p#two
, скажу мне, что "p # два" щелкнул. Однако это не сработает, я не получил результат console.log
"p # two clicked" после нажатия кнопки p#two
.
Я использую on()
, чтобы добавить событие click к p#two
. Что я делаю неправильно?
Спасибо.
Ниже приведен мой пример кода:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>on() test</title>
<link type="text/css" href="#" onclick="location.href='http://localhost/jquery-ui-1.8.20.custom/css/smoothness/jquery-ui-1.8.20.custom.css'; return false;" rel="stylesheet" />
<script type="text/javascript" src="http://localhost/jquery-ui-1.8.20.custom/js/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="http://localhost/jquery-ui-1.8.20.custom/js/jquery-ui-1.8.20.custom.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('p#two').on('click', function() {
console.log('p#two clicked');
});
$('p#one').click(function() {
console.log('p#one clicked');
$('<p id="two">two</p>').insertAfter('p#one');
});
}); // end doc ready
</script>
</head>
<body>
<p id="one">one</p>
</body>
</html>