***RESOLVIDO*** Fechar janela do tipo modal com javascript

Olá, tem um formulário simples no qual a partir de uma determinada escolha eu chamo sc_redir() e abro uma janela modal para um grid editável, até aí tudo bem. Porém, quero que ao fechar essa janela modal, seja exibida uma mensagem, então criei um botão javascript para exibir a mensagem que eu quero e depois fechar com window.close(). No entanto, ao clicar no botão criado não fecha a janela modal. Fiz teste como outros tipos de janela (_self,_parent,…) e funciona, apenas com modal que não funciona.

Alguém sabe porque e/ou tem alguma sugestão de como resolver esse problema (obs: quero continuar usando uma janela modal)?

Descobri como resolver meu problema, vou postar aqui a solução que eu encontrei, pra quem interessar possa:

É só inserir a seguinte linha de código

document.F1.action='nome_formulario_janela_modal_fim.php'; document.F1.submit(); return false;

Onde ‘nome_formulario_janela_modal’, é o nome do formulário correspondente a janela modal que você seja fechar.

Olá belecomp,

Estou precisando de uma ajuda sua.

Tenho um Blank e estou chamando ele apartir de uma grid por um botão de ligação, link “Modal”.
Então criei um botão no blank para pode fecha-lo, seguindo o seu modelo, mas creio que estou errando em algo e gostaria
de um help seu…

?>
<script type='text/javascript'>
<!--
function FecharJanela()
{
	document.F1.action='blank_integracao_contas.php';
        document.F1.submit();
        return false;
}
-->
</script>
<input name="voltar" type="button" onclick="FecharJanela()" value="Voltar" />

<?php

Qual o erro que está acontecendo?

Talvez seja pq você esqueceu de colocar ‘fim’, ficaria assim então:

...
	document.F1.action='blank_integracao_contas_fim.php';
...

Mas se mesmo assim não funcionar, pode me perguntar novamente!

Não aparece erro não…

Eu não tinha colocado o ‘fim’, mais agora coloquei e msm assim não funcionou.
Analisei as grids e forms todas tem o ‘fim’, já o blank não tem, acho que é isso…

Como será que faz para fechar o blank?

Por o blank não ter o ‘fim’, consegui fechar usando o seguinte codigo

self.parent.tb_remove()

Mas ainda não está bom, pois preciso que ao sair do MODAL ele atualize a GRID que está em segundo plano.

Se souber algo me fale vlw.

Hum que bom que você conseguiu resolver então!
Em relação a atualizar a grid aí já complica um pouco, mas se eu conseguir pensar em algo te falo.

olha só eu uso essa blank pra fazer upload com o uploadfy tem um recurso que uso pra atualizar o form depois de chamar essa blank em um modal, veja se server pra você. Quebra galho no úrtimo!!! Yyyyuuuuiiii

Se não entender eu explico…

[code]/**

  • Check for an existing record
    */

// SQL statement parameters
$check_table = ‘vistorias’; // Table name
$check_where = “idvistorias = [idvistorias]”; // Where clause

// Check for record
$check_sql = ‘SELECT idvistorias, nsinistro’
. ’ FROM ’ . $check_table
. ’ WHERE ’ . $check_where;
sc_select(dataset, $check_sql);

if (false == {dataset}) // Error while accessing database
{
sc_error_message(‘Não foi possível acessar a base de dados!’);
//header(‘self.parent.tb_remove();’);
}
elseif ({dataset}->EOF) // No record found
{
sc_error_message(‘Não há nenhum registro com esse parâmetro de pesquisa!’);
//echo ‘self.parent.tb_remove();’;
}
else // Record found
{
[idvistorias] = $dataset->fields[0];
[nsinistro] = $dataset->fields[1];
?>

300Kb por arquivo

Enviar arquivos <? }[/code]

ao criar a janela modal e inspecionar o código da ação fechar, copie o codigo, e na ação em questão, utilize a macro que executa javascript via ajax, aplicando a uma função javascript que contém esse código.

muito boa a dica !!! muito obrigado !!

Almeida, não sei se já conseguiu, mas funciona da seguinte forma:

window.parent.document.forms[0].submit(); // ATUALIZA A GRID EMBAIXO

Wennys