Jump to content
Forum Roportal
iunia_madalina

iframe html javascript

Rate this topic

Recommended Posts

buna. am o pagina html in care am un iframe (o alta pagina html). as vrea sa pot selecta text din acest iframe si apasand un buton din afara iframe-ului sa imi copieze textul intr-un text box (tot din afara iframe-ului). Am cautat pe net cateva zile si nu am gasit nimic care sa ma ajute sa pot comunica intre iframe si parinte. Am deja o functie javascript care imi copiaza text intr-un text box dar merge numai pentru textul din afara iframe-ului.

 

Codul este urmatorul....

....

<p>Ceva text din afara iframe-lui.</p>

<iframe name="iframe1" id="iframe1" src="http://www.devittwinery.com/our_wines.html"></iframe>

<form>

<input type="text" name="textbox1" value="" />

<input onclick="copyit(this.form.textbox1)" type="button" value="Copy" name="btnCopy" />

</form>

....

 

iar functia javascript este:

function copyit(theField) {

var selectedText = document.selection;

if (selectedText.type == 'Text') {

var newRange = selectedText.createRange();

theField.focus();

theField.value = newRange.text;

} else {

alert('select a text in the page and then press this button');

}

}

 

aceasta este varianta care functioneaza pt textul din afara iframe-ului. in cazul in care incerc sa pun in loc de "var selectedText = document.selection;" ceva de genul:

 

iframe = document.getElementById("iframe1");

var selectText =iframe.contentWindow.selection;

 

imi da eroare...

 

Ma poate ajuta cineva cu niste sfaturi?... pls :lol: Merci

Share this post


Link to post
Share on other sites

uite un exemplu de doua fisiere care comunica pe relatia parent-frame:

fisierul index.htm

 

<html>

<script>

function SetChild()

{

window.frames["ifrmChild"].document.all("txtSubindex").value=document.all("txtIndex").value;

}

</script>

<body>

<input type="text" value="aaa" ID="txtIndex"/>

<input type="button" onClick="SetChild();" value="Pune valoare in iframe"/>

<br/>

<iframe src="subindex.htm" id="ifrmChild">

</body>

</html>

 

si fiserul subindex.htm aflat in iframe

 

<html>

<script>

function PutParent()

{

window.parent.document.all("txtIndex").value=document.all("txtSubindex").value;

}

</script>

<body>

<input type="text" value="bbb" ID="txtSubindex"/>

<input type="button" onClick="PutParent();" value="Pune valoare in parent"/>

</body>

</html>

Share this post


Link to post
Share on other sites

Merci pentru exemplu! M-a ajutat foarte mult.

Acum codul meu arata cam asa:

 

 

<html>

<script>

 

function Settext()

{

 

var selectedText=document.getElementById('ifrmChild').contentWindow.getSelection();

document.all("txtIndex").value = selectedText;

 

}

</script>

<body>

 

 

<input type="text" value="aaa" id="txtIndex"/>

<input type="button" onClick="Settext();" value="Pune valoare in parent"/>

<br/>

<iframe src="subindex.html" id="ifrmChild">

</body>

</html>

 

care merge perfect in firefox .

 

Insa problema mea acum e alta. Daca pagina html din iframe face parte din domeniul meu totul e ok, insa eu am nevoie de pagini din afara domeniului meu. In aceasta situatie imi da eroare. Am cautat pe net si am inteles ca pagina din iframe trebuie sa fie obligatoriu din acelasi domeniu cu parintele. Intrebarea mea este: exista vreo metoda pentru a putea selecta in iframe text din pagini din afara domeniului meu?

 

Merci!

Edited by iunia_madalina

Share this post


Link to post
Share on other sites
Daca pagina html din iframe face parte din domeniul meu totul e ok, insa eu am nevoie de pagini din afara domeniului meu. In aceasta situatie imi da eroare. Am cautat pe net si am inteles ca pagina din iframe trebuie sa fie obligatoriu din acelasi domeniu cu parintele. Intrebarea mea este: exista vreo metoda pentru a putea selecta in iframe text din pagini din afara domeniului meu?

Ce eroare iti da daca e pagina din alt domeniu?

In mod normal nu conteaza din ce domeniu e pagina. Script-ul Java se executa la client. Cred ca eroarea are alta cauza, nu domeniul.

Share this post


Link to post
Share on other sites

Aveam urmatoarea eroare: "permission denied". Am cautat pe net si am inteles ca din cauza ca javascriptl nu permite selectarea textului daca pagina este din alt domeniu. Recomandarea era sa pun paginile care ma intereseaza pe server. Si asta fac acum.

 

Multumesc pentru ajutorul acordat.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×