2014-01-10 171 views
0

請幫我一個Iframe觸發器。添加文本到iframe輸入框

如何將值放入iframe的輸入字段中? 我相信問題是因爲佈局級別而生活的。

(iframe要放在自己的網站上爲HTML)

我的iFrame:

<form id="form"> 
<div id="root"> 
<iframe id="lev-iframe"> 
<html> 
<form id="form"> 
<fieldset class="fields">  
    <div class="full"> 
    <div class="part"> 
    <input class="uniqueclass" name="uniquename" type="text" value="" /> 
    </div></div> 

jQuery的

//tested #root, #form, #lev-iframe; nothing seems to work for me... 

<script type="text/javascript"> 
$(window).bind("load", function() { 

$('#root').trigger('setFieldValue', { 
name: 'uniquename', 
value: 'myvalue' 

}) }); 
</script> 
+0

此代碼是奇怪。 – rybo111

+0

哈哈對不起。希望你的意思是iframe代碼而不是觸發器。我認爲我已經接近解決問題了,但目前它對我無能爲力。 – Ruud

+0

我認爲你需要學習HTML的基礎知識。 – rybo111

回答

0

就像你在做你無法定義IFRAME您的示例通過在IFRAME標記內添加HTML。它要麼指向具有此HTML另一頁:

<iframe id="lev-iframe" src="other_page.html"></iframe> 

或HTML填充programmaticaly,例如:

HTML

<iframe id="lev-iframe"></iframe> 

JS

//This code will add input box to the iframe above 
var doc = $("#lev-iframe")[0].contentWindow.document; 
var $body = $('body',doc); 
$body.html('<input class="uniqueclass" id="uniquename" type="text" value="" />'); 

一旦你有一個有效的IFRAME它的訪問您需要的元素的一個簡單的問題:

$("#lev-iframe")[0].contentWindow.document.getElementById('uniquename').value = 'myvalue'; 

演示:http://jsfiddle.net/wbwCu/

+0

謝謝你的建議。是不是可以將值打印到輸入框(setFieldValue)而不是添加全新的輸入域? – Ruud

+0

添加整個輸入字段只是以編程方式創建IFRAME內容的一個示例 - 您不必這樣做。如果你像第一個例子中那樣通過「SRC =」定義IFRAME的HTML,那麼你所需要設置的值就是最後一行代碼。 –

+0

謝謝Yuriy,我設法更新了值,並最終整合了新的輸入域。 – Ruud