【问题标题】:Html element can not be addressed after jquery .html [duplicate]jquery .html后无法处理HTML元素[重复]
【发布时间】:2014-06-19 11:42:20
【问题描述】:

我尝试使用 .html(...) 插入一个按钮,然后他应该执行一些代码。 但它不起作用,按钮(插入.html(...))在点击他后没有响应..我不知道我能做什么,我也向谷歌寻求帮助,但我什么也没找到。 . 我希望有人可以帮助我:)

这是我的 html:

<html>
<head>
    <title>Multiplie Files</title>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <script src="js/libs/jquery/jquery.js"></script>
    <script type="text/javascript" src="js/files.js"></script>
</head>
<body>
    <button id="button">test</button>

    <div id="field"></div>
</body>

这是我的 javascript:

$('document').ready(function() {

$('#click').click(function() {
   alert(true); 
});

$('#button').click(function(){
    $('#field').html('<input value="Click" type="Button" id="click"/>');
    //document.getElementById("field").innerHTML = '<input value="Click" type="Button" id="click"/>';
});

});

我尝试使用 jquery .html 和普通的 javascript .innerHTML.. 没有任何效果..

感谢您的每一个回复! :)

【问题讨论】:

标签: javascript jquery html web


【解决方案1】:

尝试在动态创建的元素上使用event-delegation

$('#field').on('click','#click',function() {
   alert(true); 
});

【讨论】:

  • 是的,谢谢它的工作原理!你能这么好,用简单而简短的方式向我解释这个“事件委托”吗? :)
  • @Nico,Raja 已经为您提供了链接。我不想粗鲁。你不能跟着那个吗
  • 是的,我看到了,但我不太容易理解这一点。我以为他知道这一点,可以简单地向我解释,但后来我尝试自己研究它
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-06
  • 2012-06-02
  • 1970-01-01
  • 2014-08-16
  • 1970-01-01
相关资源
最近更新 更多