JS获取iframe内的值
在父窗口中获取iframe中的元素
格式:window.frames["iframe的name值"].document.getElementById("iframe中控件的ID").click(); 实例:window.frames["ifm"].document.getElementById("btnOk").click(); 格式: var obj=document.getElementById("iframe的name").contentWindow; var ifmObj=obj.document.getElementById("iframe中控件的ID"); ifmObj.click(); 实例: var obj=document.getElementById("ifm").contentWindow; var ifmObj=obj.document.getElementById("btnOk"); ifmObj.click();
在iframe中获取父窗口的元素
格式:window.parent.document.getElementById("父窗口的元素ID").click();
实例:window.parent.document.getElementById("btnOk").click();
在父窗口中获取iframe中的元素
格式:$("#iframe的ID").contents().find("#iframe中的控件ID").click();//jquery 方法1 实例:$("#ifm").contents().find("#btnOk").click();//jquery 方法1 格式:$("#iframe中的控件ID",document.frames("frame的name").document).click();//jquery 方法2 实例:$("#btnOk",document.frames("ifm").document).click();//jquery 方法2
在iframe中获取父窗口的元素
格式:$('#父窗口中的元素ID', parent.document).click();
实例:$('#btnOk', parent.document).click();
iframe加载完成
有些时候动态添加iframe或者初始化的时候要获取iframe内的值;那么就要等iframe页面加载完了再操作;
var iframe = document.getElementById('myFrame'); if (iframe.attachEvent) { iframe.attachEvent("onload", function () { console.log(iframe.contentWindow.document.body.innerHTML); }); } else { iframe.onload = function () { console.log(iframe.contentWindow.document.body.innerHTML); }; }