Jump to content

[Resolvido] Linkar para uma iframe usando função Java Script


pvalentim
 Share

Recommended Posts

Boa tarde

Quero abrir uma página numa iframe da página actual chamada iframe_pagina.

Quero usar uma função de JavaScript que me vai abrir uma página mediante o item seleccionado numa caixa de combinação.

Estou a usar o seguinte código que abre a página que quero mas numa página inteira.

<script>

function func_pagina(){

    var texto

    var indice = document.formul.paginas.selectedIndex

    var valor = document.formul.paginas.options[indice].value

    var caminho=valor+"/pag.htm"

    window.open(caminho);

}

</script>

.....

<form name="formul">

  <select size="1" name="paginas">

<option value="pag1">Página 1</option>

<option value="pag2">Página 2</option>

    </select>

  <input type="submit" value="Visualizar" name="B1" onclick="func_pagina()"></p>

</form>

.....

Obrigado

Link to comment
Share on other sites

em vez de usares window.open(caminho); usa:

document.getElementsByTagName("iframe").src = caminho;

EDIT: Corrigi o código.

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Link to comment
Share on other sites

Obrigado pela resposta.

Mas não está a dar.

Não abre coisa nenhuma.

Tens que ter um <iframe> aberto na página 😛

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Link to comment
Share on other sites

Não é document.getElementsByTagName();?? Isso (acho eu) retorna um array com todos os elementos especificados, não? talvez um document.getElementById(); seja mais apropriado...

"Pensa positivo: tudo pode piorar"

Link to comment
Share on other sites

Experimenta por um id no <iframe>, e no javascript algo assim do género:

...
document.getElementById('<id do iframe>').src = caminho;
...

Vê la se isso funciona...

"Pensa positivo: tudo pode piorar"

Link to comment
Share on other sites

Não é document.getElementsByTagName();??

Sim, é isso 😛 Já corrigi o meu post

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Link to comment
Share on other sites

Está dificil.

Isto não dá.

Já experimentei:

document.getElementById('iframe_id').src = caminho;

document.getElementByTagName("iframe_pagina").src = caminho;

document.getElementsByTagName('iframe_id').src = caminho;

Tenho a iframe definida desta forma:

<iframe id= iframe_id name="iframe_pagina" ....

Sei que o caminho está correcto porque a linha  window.open(caminho)  funciona.

Link to comment
Share on other sites

Estás aí com uma grande confusão. Experimenta:

document.getElementsByTagName('iframe')[0].src = caminho;
// ou
document.getElementById('iframe_id')[0].src = caminho;

O primeiro vai procurar o primeiro <iframe>, o segundo vai-te procurar a primeira tag com id="iframe_id" 😛

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Link to comment
Share on other sites

atenção que o id e o name da iframe devem ser o mesmo... o ie procura por um e os outros browsers pelo outro...

há 10 tipos de pessoas: as que sabem binário e as que não sabem... todas as nossas vidas não passam de release candidates... com o aperfeiçoamento, um dia chegaremos à versão final..

Link to comment
Share on other sites

Bom isto está a tomar forma. De facto o código já está a carregar uma página quando escolho uma opção na caixa pendende, só que é sempre a mesma página (a página inicial).

Tenho o código desta forma:

<script>

function func_pagina(){

    var texto;

    var indice = document.formul.paginas.selectedIndex;

    var valor = document.formul.paginas.options[indice].value;

    var caminho=valor+"/pag.htm";

    document.getElementsByTagName('iframe')[0].src = caminho;

}

</script>

....

<form name="formul">

<select size="1" name="paginas">

<option value="pag1">Página 1</option>

<option value="pag2">Página 2</option>

  </select>    </font>

  <input type="submit" value="Visualizar" name="B1" onclick="func_pagina()"></p>

</form>

......

<iframe id= "iframe_pagina" name="iframe_pagina" src=pag1/pag.htm

width="95%" height="565" target="middle" marginwidth="1" marginheight="1" align="baseline" style="background-color: #FFFFFF" scrolling="no" border="0" frameborder="0" >Iframe

</iframe>

.....

Onde raio é que está o erro?

Link to comment
Share on other sites

Põe o botão como button, e não submit. Ele assim sempre que clicas vai submeter o form, uma vez que não tens nenhuma action definida, vai para a própria página. Basicamente faz um refresh á página, daí aparecer sempre a mesma página. Digo eu.

"Pensa positivo: tudo pode piorar"

Link to comment
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
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.