我动态生成
<input type="text" id="foo">
<label for="foo">
并将侦听器设置为输入:
updateWithLabelInputs($("#foo"));
和功能:
function updateWithLabelInputs(withLabel) {
withLabel.die("focus").live("focus", function (e) {
$(this).parent().find('label').hide();
});
withLabel.die("blur").live("blur", function (e) {
if ($(this).val() == '') {
$(this).parent().find('label').show();
}
});
}
当我按标签单击时,我希望该事件被触发,但事实并非如此。有趣的是:如果相同的侦听器适用于现有的(非动态的)html - 它可以工作。问题是什么?为什么监听器不适用于动态元素?