簡體   English   中英

將jquery事件附加到動態創建的元素(jquery加載php文件)

[英]Attach jquery events to dynamically created elements (jquery load php file)

我有一個php員工目錄網站,在一個表中列出了我們所有的員工(連接到mysql),您可以單擊每個員工在另一個div中打開其詳細信息。

$('.emptab').click(function(event) {
    var status = $(this).attr('id');
    $("#empview").load("employee.php", {'data': datastring, 'current': status});
});

我最初有上面的代碼,但是需要能夠將事件附加到動態元素,因此我更改為以下代碼:

$('tbody').on('click', 'tr.emptab', function() {
    var status = $(this).attr('id');
    $("#employeedetails").load("employee.php", {'data': datastring, 'current': status});
});

當我在另一個問題( 在jQuery中,如何將事件附加到動態html元素? )上閱讀時,我就是這樣做的,您可以使用該格式將事件附加到動態元素。 為了澄清起見,此代碼可繼續在初始頁面上使用,但在使用搜索過濾器后失敗。

我的動態元素來自我擁有的過濾器/搜索功能,該功能將基於搜索文本框更改員工列表,該搜索文本框根據我創建的filter.php文檔更改員工列表。

$('#search').on('input propertychange paste', function() {
    var string = $('#search').val();
    $("#employeelist").load("filter.php", {'data': datastring, 'search': string});
});

但是,當從該php文件創建那些元素時,我無法通過我的jquery訪問這些元素,我不確定自己在做什么錯。 我看到了大約4個其他問題,答案是在功能上使用jQuery,但我嘗試失敗了。

謝謝你的時間。

您可以為此使用以下代碼

$(document).on('click', '.emptab', function() {
    var status = $(this).attr('id');
    $("#employeedetails").load("employee.php", {'data': datastring, 'current': status});
});

暫無
暫無

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

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