我不确定为什么会冒泡,但确实如此。想知道是否有人有任何想法?
$('#file_upload').live('submit',function(event){
$('#file_upload').attr('action','io.cfm?action=updateitemfile&item_id='+$('.agenda-modal').attr('data-defaultitemid'));
$('iframe').load(function(){
$('.upload_output').empty();
$livepreview.agenda({
action:'get',
id:$('.agenda-modal').attr('data-defaultitemid'),
type:'item',
callback:function(json){
for(x in json[0].files){
$('.upload_output').append('<li class="file-upload"><a target="blank" href="io.cfm?action=getitemfile&item_file_id='+json[0].files[x].item_file_id+'">'+json[0].files[x].file_name+'</a> <a style="color:red" href="#deletefile-'+json[0].files[x].item_file_id+'">[X]</a></li>');
}
console.log('callback');
}
});
console.log('iframed');
});
console.log('go');
});
因此,如果我上传文件,我会在控制台中看到以下内容:
go
iframe
callback
如果我连续第二次这样做:
go
iframed
iframed
callback
callback
三次:
go
iframed
iframed
iframed
callback
callback
callback
等等
我假设如果 live()
事件冒泡,“go
”也会冒泡,但事实并非如此。我尝试了 event.stropPropagation
几乎在提交内部的所有地方,并且 .die()
连接到 $('#file_upload').die()。生活(...
像这样。
有什么想法吗?
附注这个 live()
调用就在 jQuery 文档加载中 ($(function(){...});
)
最佳答案
如果您使用one
,您的问题应该得到解决。
$('iframe').one("load", function() {
关于javascript - 奇怪的冒泡问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3392163/