操纵动态html标签jQuery的数据

时间:2017-02-20 18:40:59

标签: jquery html class src attr

我有这段代码,

    $('#gogo').click(function(e){

    var data='<a href="http://www.google.com" class="myButtons">Google</a><a href="http://www.microsoft.com" class="myButtons">Microsoft</a>";
            $("#showResults").html(data);

    });


    $(".myButtons").click(function(e) {
        e.preventDefault();
        alert($(this).attr("href"));
        $("#result").attr("src", $(this).attr("href"));
    });


<button id="gogo">Click me</button>

<div id="showResults"></div>

<iframe id="result" name="result" src="" width="750px" height="450px" frameBorder="0"></iframe>

我想知道它为什么不起作用。也许是因为没有新添加的html标签的事件处理程序?

我不想使用目标=&#34;结果&#34;

谢谢。

1 个答案:

答案 0 :(得分:2)

您的代码不是绑定事件监听器来创建dom节点。检查我的解决方案:

$('#gogo').click(function(e){
    var data='<a href="http://wikipedia.org" class="myButtons">Wikipedia</a><a href="http://www.microsoft.com" class="myButtons">Microsoft</a>';
    $("#showResults").html(data);
});


$("body").on("click", ".myButtons", function(e) {
    e.preventDefault();
    alert($(this).attr("href"));
    $("#result").attr("src", $(this).attr("href"));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<button id="gogo">Click me</button>

<div id="showResults"></div>

<iframe id="result" name="result" src="" width="750px" height="450px" frameBorder="0"></iframe>