簡體   English   中英

訪問Jquery Ajax返回的元素

[英]Accessing Elements returned by Jquery Ajax

嗨,我使用Jquery Ajax在點擊時在DIV中動態注入了一段HTML代碼。 注入后,我無法從注入的HTML中選擇元素。 我需要為這些元素編寫單擊事件,以更改主頁上的某些數據。 如果我以內聯方式編寫jQuery,則無法訪問主頁上的元素。 有人可以幫忙嗎?

我的Jquery Ajax調用

$(".template-2-column-std a").not('.emptyMessage').click(function () {        
    var parentidVal = $(this).data('parentid')
    $.ajax({
        url: '/Navigation/GetBreadCrumbList',
        contentType: 'application/html; charset=utf-8',
        data: { id: parentidVal },
        type: 'GET',
        dataType: 'html'
    })
    .success(function (result) {
        $('#breadcrumb').html(result);
    })
    .error(function (xhr, status) {
        alert(status);
    })
});

嘗試

$('body').on('click','#myDiv',  function(){ 


});

代替

 $("#myDiv").click ...

這是訪問動態生成的元素的方式。

您應該在succes函數中綁定事件,例如:

.success(function (result) {

    $('#breadcrumb').html(result);
     bindEventListener();
})
function bindEventListener(){
  $("#newAddedElement").on('click', function(){
     do somethins...
  })
}

您需要使用事件委托將事件偵聽器附加到文檔加載時不在DOM上的元素上。 嘗試這個:

$('#breadcrumb').on('click', <selector>, function() {...});

我假設在加載DOM時存在$('#breadcrumb')。 然后,您僅用於過濾其后代。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM