❶ 調用iframe中的js問題
調用格式為:子框架ID.函數名():
如<iframe src='../test.html' id='frame1'></iframe>
調用格式應為:frame1.test(),光用test()顯然是找不到的,另外內子窗體中定義的全容局變數也可以用類似格式。
IE8測試通過,其它不知。
❷ 主頁面怎麼調用iframe里的javascript方法
如果是同一個域,iframe可以調用父窗口的js方法。如果
是父窗口調用子窗口內部的方法。不論跨不跨域,都不能調用。
解決辦法:H5提供的消息機制。支持跨域。
在iframe窗口的js代碼中,監聽事件:
window.onmessage=function(e){
//e.data--接收到的字元串。
//e.source---發送窗口所在的域。
//e.orgin--發送窗口的代理對象。
}
在主頁面窗口中,發送消息。
window.postMessage("字元串","域");
//其中的域是指iframe所在網站的域名。如果為*表示不校驗校驗域名。
❸ js 怎麼在iframe外執行iframe裡面的方法
實現iframe內部頁面直接調用該iframe所屬父窗口自定義函數的方法。
比如有A窗口,A內有個IFRAME B,B裡面的裝載的是C頁面,這時C要直接調用A裡面的一個自定義函數AFUN();
那麼只要在C頁面中寫如下JS函數就可以了:
window.parent.AFUN();
如果AFUN()有參數也可以直接傳遞合適的參數進去。
例如:
修改父窗口控制項屬性
window.parent.document.getElementById('frmright').src=window.parent.document.getElementById('frmrightsrc').value;
調用父窗口函數
window.parent.POPUP('bigFram'); 內容來自零度科技
父窗口調用iframe子窗口方法
<iframe name="myFrame" src="child.html"></iframe>
myFrame.window.functionName();
iframe子窗口調用父窗口方法
parent.functionName();
用js互相調用iframe頁面內的js函數。
❹ 如何調用layer.open打開的的iframe窗口中的JS
不知道為啥要調用子窗口的JS,你完全可以在手汪直接子窗口裡自己執行自己的JS。
如果你想要皮薯要使用父窗口的dom或者變數,可以使用parent或者使用layer.open的success回調先將需要的東西作為隱藏域放到子窗口,然後畢握仔子窗口自己獲取。
❺ iframe 子頁面JS如何調用父頁面全局變數
1、在父頁面訪問Iframe子窗體的txtAddress控制項
window.frames["ifrMapCompanyDetails"].document.all("txtAddress").value = '地址' ;
2、在Iframe子窗體1訪問父頁面的TextBox1控制項 , 子窗體1把值賦給子窗體2的某個控制項
string strValue = "從子窗體傳遞給父頁面的值" ;
下面是在Page_Load事件裡面調用的,當然可以寫在javascript腳本裡面
this.Response.Write("<script>parent.document.all('TextBox1').value = '" + strValue + "';</script>");
this.Response.Write("<script>if( parent.document.all('TextBox2').value = '0')parent.document.all('TextBox1').value = '44';</script>");
3、子窗體訪問父窗體中的全局變數:
parent.xxx;
4、在Iframe子窗體1訪問子窗體2的txtAddress控制項 子窗體1把值賦給子窗體2的某個控制項
window.parent.frames["ifrMapCompanyDetails"].document.all("txtAddress").value = '地址' ;
父窗體提交兩個Iframe子窗體
window.frames["ifrMapCompanyDetails"].Form1.submit();
window.frames["ifrMapProctInfoDetails"].Form1.submit();
Iframe子窗體 調用父頁面的javascript事件
window.parent.XXX()
//父頁面調用當前頁面中IFRAME子頁面中的腳本childEvent
function invokechildEvent()
{ var frm = document.frames["ifrChild1"].childEvent(); }
或者調用當前頁面中第一個IFRAME中的腳本childEvent
{ var frm = document.frames[0]; frm.childEvent(); }
//子頁面調用父窗體的某個按鈕的按鈕事件
window.parent.Form1.btnParent.click()
父頁面調用子窗體的某個按鈕的按鈕事件
window.frames['ifrChild1'].document.all.item("btnChild3").click();
//jquery 部分:
1.在父窗口中操作 選中IFRAME中的所有單選鈕
$(window.frames["iframe1"].document).find("input[@type='radio']").attr("checked","true");
2.在IFRAME中操作 選中父窗口中的所有單選鈕
$(window.parent.document).find("input[@type='radio']").attr("checked","true");
❻ 如何向iframe中寫入js代碼讓js在iframe中執行
1、首先,新建一個網頁。
❼ 如何在父頁面上調用iframe子頁面的js方法
這個其實應該放在《多個iframe之間js的通信問題》文章里,但是由於已經寫完了,所以就在這里暫且作為補充巴。上一篇文章中,我們說的通信,僅僅說了一個方面,就是訪問雙方的dom樹節點。其實除了訪問dom,還有訪問js方法也是很重要的。
一、父頁面訪問iframe子頁面的js方法
1)父頁面
<iframe frameborder="0" name="myContentIframeName" id="myContentIframe"src="examples/completeDemo.html" style="width:99%;height:600px;"></iframe>
2)iframe頁面
<script type="text/plain" id="editor" style="width:700px;" >
</script>
<script type="text/javascript">
function getContent(){
var arr = [];
arr.push("使用editor.getContent()方法可以獲得編輯器的內容");
arr.push("內容為:");
arr.push(ue.getContent());
alert(arr.join("\n"));
return ue.getContent();
}
</script>
3)父頁面調用iframe子頁面js方法
var editor = window.frames["myContentIframeName"].getContent();
$("#lastContent").val(editor);