sau Inregistrare
  
Pagina 1 din 1
  • Nu poti crea un subiect nou
  • Nu puteti raspunde pe acest topic

iframe html javascript comunicare intre iframe si parinte Evaluare topic: - - - - -

#1 Utilizator offline   iunia_madalina 

  • Ghiocel
  • Grup: Members
  • Mesaje: 3
  • Inregistrat: 15-November 08

  Scris 15 November 2008 - 12:22 PM

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
0

#2 Utilizator offline   Paul Brahtl 

  • Orhidee
  • PipPipPipPipPipPip
  • Grup: Moderator Global
  • Mesaje: 1.933
  • Inregistrat: 25-July 07

Scris 17 November 2008 - 01:02 PM

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>
0

#3 Utilizator offline   iunia_madalina 

  • Ghiocel
  • Grup: Members
  • Mesaje: 3
  • Inregistrat: 15-November 08

Scris 18 November 2008 - 11:39 AM

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!

Aceasta postare a fost editata de iunia_madalina: 18 November 2008 - 12:23 PM

0

#4 Utilizator offline   Paul Brahtl 

  • Orhidee
  • PipPipPipPipPipPip
  • Grup: Moderator Global
  • Mesaje: 1.933
  • Inregistrat: 25-July 07

Scris 18 November 2008 - 03:22 PM

Vezi postareaiunia_madalina, la Nov 18 2008, 11:39 AM, a spus:

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.
0

#5 Utilizator offline   iunia_madalina 

  • Ghiocel
  • Grup: Members
  • Mesaje: 3
  • Inregistrat: 15-November 08

Scris 18 November 2008 - 04:07 PM

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.
0

Reclama



Impartaseste acest subiect:


Pagina 1 din 1
  • Nu poti crea un subiect nou
  • Nu puteti raspunde pe acest topic


Subiecte similare Collapse

  Topic Deschis de Replici Vizualizari
Replici noi iReport Indiga_83  1 954
Topic inchis salutare la toti
as avea si eu nevoie de un generator de apeluri
Angel1985  1 1.154
Replici noi Intrebare gloobal  7 3.679
Replici noi Functie php care se apeleaza la un moment dat t_mann  6 4.381
Replici noi Configurare Apache dobry  1 1.847