将' click '事件添加到' iframe '的' iframe '的子事件-不工作

Adding `click` event to child of `iframe` of `iframe` - not woking

本文关键字:iframe 事件 工作 添加 click      更新时间:2023-09-26

我试图添加一个点击事件的元素,这是嵌套在iframeiframe内。

这是一个iframe .ssueContentIframe下,有另一个iframe添加为#SmartReportTabContent1,所以在第二个iframe元素内,我试图添加一个点击事件,像这样:

基本上,我不知道什么时候两个iframe将被加载,所有的元素都是可用的,将来我添加:

$('.ssueContentIframe').contents().find( '#SmartReportTabContent1' ).find('.ui-grid-selection-row-header-buttons.ui-grid-icon-ok.ui-grid-row-selected').on('click', function(){
             alert('Hi');
         });

但不工作。等待iframe存在并将单击事件添加到这里的一个元素的正确方法是什么?

提前感谢!

您还需要在第二个iframe上使用"contents"。为了等待它加载,你可以在第二个iframe上使用"ready"事件。

,

$("#SmartReportTabContent1").find("iframe").ready(function (){
    // do something once the iframe is loaded
});

参考这个问题

我编辑这个,首先加载第一个iframe并检查它是否加载好,然后执行点击元素的函数

$(function(){
    $('#foo1').load(function(){
        alert("Loaded");
            $('#foo1').contents().find('iframe').contents().find('#test').on('click', function(event) {
                alert("Working");
            });
    });
});

我在我的电脑上测试了一下,效果很好,记住添加了库,如果你不添加库,它将无法工作。

把我的ID改成你的ID。