Dúvida com iframes no scriptcase [RESOLVIDO]

Bom dia!

Pessoal, tenho 3 apps sendo uma principal e mais duas dentro de dois iframes. O botão voltar precisaria abrir por cima do iframe principal. O sc_redir já está com _parent.

Alguém sabe como resolver isso?

Bom dia,

Não sei se vai ser útil, mas tenta com código Javascript:

window.history.back();

Fiz isso Marcelo mas ao voltar dá essa mensagem abaixo:

Esta página da Web requer os dados inseridos anteriormente para ser exibida de modo correto. É possível enviá-los novamente mas, ao fazer isso, você repete qualquer ação realizada anteriormente na página.

Se eu clicar com o botão direito em cima e depois em Atualizar frame aí abre no local correto.

Tentou usar sc_ajax_javascript(‘nm_atualiza’)? Pode ser que resolva o teu problema.

Bom dia!

Deste jeito está funcionando, mas ainda estou com um problema:

var url_atual = "../aplicacao/aplicacao.php";
window.open(url_atual,"menu_btn_24_iframe");

O problema é que no sistema, eu tenho a opção de abrir essa aplicação principal tanto por aqueles botões de atalho quanto pelo menu mesmo. Fazendo assim, ele gera dois iframes com nomes diferentes:

  • menu_item_121_iframe: quando a aplicação é aberta pelo menu
  • menu_btn_24_iframe: quando a aplicação é aberta pelo botão de atalho (barra de ferramentas).

Como eu controlaria isso? Não sei se no sc9 isso acontece pois estou no 8.1

P.S.: As aplicações são abertas em abas dentro do sistema.

Uma sugestão:

Antes de usar o id do frame na URL verifica se ele existe e usa o que existir.

Não entendi Ronyan. Pode me dar um exemplo?

Exemplo:

var element =  document.getElementById('menu_item_121_iframe');
if (typeof(element) != 'undefined' && element != null)
{
  // existe.
}

Bom dia Ronyan!!

Fiz um if/else e só cai no else, ele não entra nesse if conforme seu exemplo!

<script type="text/javascript">
  var element =  document.getElementById('menu_btn_24_iframe');
  if (typeof(element) != 'undefined' && element != null){
    alert("existe");
  }else{
    alert("não existe");
  }
</script>

Vou tentar detalhar melhor o que estou passando agora.
No menu, eu chamo a mesma aplicação em três locais diferentes sendo que tenho dois itens no menu e um botão na barra de ferramentas.

Como para cada chamada dessa, eu tenho um nome de iframe, isso me complica na hora de redirecionar o botão voltar para a aplicação que eu quero. Aí que eu queria uma ajuda agora.

É apenas uma ideia, pode ser que funcione pro teu caso: não tentou fazer isso com variáveis globais?
Por exemplo tenho uma apl X que vai para o Y, nessa apl X tenho uma variável global que é de saída que tu coloca um valor qualquer nele, e indo para a apl Y ao clicar no botão Voltar, essa variável global que vai ser de entrada volta para a apl X na qual onde tu quer que volte.

Mas o problema é como eu vou saber em qual local que eu cliquei pra abrir a aplicação lembrando que eu tenho tres caminhos pra acessar a mesma aplicação, sendo dois no menu e um na barra de ferramentas.

Eu descobri isso que fica em $_SESSION: [script_case_init] mas ainda vou testar.

Pessoal, resolvido da seguinte forma conforme a ajuda do Clarck.

?>
<script src="http://code.jquery.com/jquery-1.8.3.min.js"></script>
<script>
$(function(){
	$('#btn_24').attr('item-href', $('#item_121').attr('item-href')).attr('onclick', $('#item_121').attr('onclick'));
});
</script>
<?php

Onde:

[ul][li]#btn_24 = id do botão da barra de ferramentas[/li]
[li]#item_121 = id do item do menu[/li][/ul]

Com isso, ao abrir a mesma aplicação tanto pelo botão quanto pelo item do menu, abrem na mesma aba, não duplicando mais.
Meu problema ocorria para o scriptcase 8.1. Não sei se na v9 ocorre o mesmo problema. Caso ocorra, mudar apenas a linha:

<script src="http://code.jquery.com/jquery-1.8.3.min.js"></script>

Para

<script src="http://code.jquery.com/jquery-3.1.1.min.js"></script>

Obs: No scriptcase 9 eu não testei ok? Não sei nem se ocorre o mesmo problema.

Att.

Que bom que resolveu e melhor ainda que postou a solução, poderia fazer um vídeo mostrando qual era o problema… ou uma tela… porque sinceramente não entendi…

Valeu Thyago por compartilhar a solução e que bom que consegui resolver, vai ser útil pra muita gente. :wink:

O problema era o seguinte: Tenho uma aplicação x. Essa aplicação é chamada através da barra de ferramentas do menu e também através do item do menu. Para cada um, abria uma aba. Com essa solução abre tudo na mesma aba agora.