这是脚本。当我在加载时点击它,就像一个魅力。当我通过动态创建的元素单击它时,第一次单击会看到实际的html shift(拉伸类型并返回)。但它确实可以在第二次点击时保持一致。
<script>
$(document).on('click', '.iframe_add', function(){
var element = $(this).attr('name');
$('#iframe_target').html('<iframe src="https://104.131.18.58/t3/default/ajax_new_secured_asset_debt_creator?all='+element +'" frameborder="0" width="580" height="300" scrolling="yes" id="myFrame"></iframe>');
});
</script>
我真的不知道怎么回事,我很感激任何帮助。
P.S。我看到了这个,但我不确定它是否适用(似乎处理一些datepicker问题) jquery on.click doesn't work on first click (with a dynamic element)
编辑:
这是HTML
<div id="iframe_modal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">X</button>
<h4 class="modal-title">Edit Information</h4>
</div>
<div id="iframe_target" class="modal-body">
</div>
</div>
</div>
</div>
编辑2 - 控制台日志(完全相同):
<a href="#iframe_modal" name="14-1136--Debts_secured-asset_page" class="iframe_add" data-toggle="modal">New</a>
答案 0 :(得分:0)
您的控制台日志:
<a href="#iframe_modal" name="14---asset-asset_page" class="iframe_input btn btn btn-primary" data-toggle="modal">New</a>
显示其中一个类是iframe_input
。
当您点击具有名为.iframe_add
的类的元素时,您的JavaScript告诉我们您希望触发click事件。
尝试
$(document).on('click', '.iframe_input', function(){
答案 1 :(得分:0)
确定。所以这是我提出的hackity-hack解决方案(如果你不能击败他们 - 而且他们是我的意思是javascript,加入他们):
parent.document.getElementsByClassName("iframe_input")[0].click();
当模态隐藏时,我只是强制点击第一个输入元素,这似乎解决了这个问题。话虽这么说,这似乎真的很hacky,我很清楚为什么这是错误的,但它确实像魅力一样....