JQuery选择动态创建的对象

时间:2015-04-10 07:25:20

标签: javascript jquery dynamic

您好我在这里创建了一些动态的

元素

function loadApiData(){
var url, jqxhr, url2, jqxhr2, status;
for (i = 0; i < 11; i++) {
    url2 = document.URL + 'status/' + i;
    jqxhr2 = $.getJSON(url2, function(data) {
        console.log('API response received');
        //console.log(url2);
        console.log(data);
        status = data['status'];
        //console.log(status);
        if (status == false) {
            //$('#false').append('<p class="p2" id="' + data['phone'] + 'on">' + data['phone'] + ' phone Status: ' + status + '<p>');
            $('#false').append('<p class="p2" id="' + data['phone'] + 'on">' + data['phone'] + ' phone Status: <input type="button" id="' + data['phone'] + 'off" value="' + status + '" /><p>');
        } else {
            $('#true').append('<p id="' + data['phone'] + 'off">' + data['phone'] + ' phone Status: ' + status + '<p>');
        }
    });
}

};

然而,当我稍后尝试加载它们时

function loadWindowSystem() {
 $('#Nimoff').click(function() {
    alert('hi');
});
};

我发现它实际上没有注册click事件。

我的document.ready()看起来像这样。

$(document).ready(function(){
loadApiData();
loadWindowSystem();
});

非常感谢任何帮助。 感谢

使用

解决
$( document ).on( 'click', '#Nimoff', function () { // you code });

1 个答案:

答案 0 :(得分:0)

尝试绑定事件 -

$('#false').append('<p class="p2" id="' + data['phone'] + 'on">' + data['phone'] + ' phone Status: <input type="button" id="' + data['phone'] + 'off" value="' + status + '" /><p>').bind('click', function() {
    alert('hii');
});

或尝试使用 -

$('#Nimoff').on('click', function() {  ............ //code here })