簡體   English   中英

無法從Ajax div調用JavaScript

[英]Can't call javascript from ajax div

我使用ajax在頁面中加載了一些內容。 單擊某些錨點后,我想運行JS函數。 這些錨點屬於使用ajax加載的代碼。 ajax請求和JS函數都位於jQuery(document).ready(function() {

我在這個JS文件中有幾十個函數,它們運行良好,但是這個特定的函數是使用ajax檢索的代碼調用的唯一函數,並且不起作用。 我的代碼:

html主文件:

<!-- code -->
<div id="ajaxContentGoesHere">
<!-- content inserted here by ajax function -->
<td><a href="#" id="aLancamentoEdit<?php echo $lancamento['Lancamento']['lan_itid']; ?>">Editar</a></td>
</div>    
<script src="/js/myJS.js"></script>
</body> 

/js/myJS.js文件:

jQuery(document).ready(function() {
/*some other functions here*/
 $("[id^='aLancamentoEdit']").click(function(){
        console.log(1);
}
});

我試圖將$("[id^='aLancamentoEdit']").click(function(){放在html主文件中,放在/js/myJS.js調用后的標記中。不起作用。嘗試更改選擇器以匹配我的錨定類(為此我聲明了一個類)。也沒有成功。最后還嘗試在函數中放置一個名稱,並在錨定內的onclick=""上調用它。再次失敗。

我究竟做錯了什么?

由於以'aLancamentoEdit'開頭的id為id的元素是由ajax動態添加的,因此您需要將click handler綁定到parent:

$('#ajaxContentGoesHere').on('click', "[id^='aLancamentoEdit']", function() {
   console.log(1);
});

.on()用於動態元素事件(在您的情況下為ajax內容)。 嘗試:

jQuery(document).ready(function() {
/*some other functions here*/
 $("#ajaxContentGoesHere").on("click","[id^='aLancamentoEdit']",function(){
        console.log(1);
}
});

暫無
暫無

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

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