2012-03-13 9 views
0

J'ai une fenêtre pop-up et après avoir fait quelque chose dans la fenêtre, je veux revenir à la fenêtre principale. maintenant à la place, le formulaire qui devrait apparaître sur la fenêtre principale apparaît dans ma fenêtre pop-up.appeler la fenêtre principale de la fenêtre pop-up

function checkForm() { 
//check all necessary things 
var varAmount =....; //which will get after process insides javascript 
window.location = 'myaction.action?amount='+varAmount ; 
} 

<form name="frmUpload" target="main">... 
<input type="button" class="button" value="Save" onclick="checkForm();"/> 
</form> 

Je veux passer la valeur Montant à mon action aussi et que vous voulez revenir à la fenêtre principale (et fermer la fenêtre pop-up après le processus est fait et appeler myaction.actoin).

Bien que j'appelle target="main", il ne va pas fermer le pop-up et revenir à la principale.

+0

Utilisez iframe et faites-en une cible lors du téléchargement –

+0

'window.opener' dans la fenêtre pop-up se référera à la fenêtre qui l'a ouverte ou à votre fenêtre principale. – kirilloid

Répondre

0

Si vous souhaitez cibler la forme à la fenêtre principale, vous devez nommer la fenêtre principale dans un script dans la fenêtre principale:

window.name="main";

changer ensuite le bouton pour envoyer et supprimez le javascript ou déplacer le contrôle à la onsubmit

function checkForm() { 
//check all necessary things 
var varAmount =....; //which will get after process insides javascript 
    if (...) return false; // cancel submit 
    return true; // allow submit 
} 


<form name="frmUpload" target="main" onsubmit="return checkForm(this)">... 
<input type="submit" class="button" value="Save" /> 
</form> 

Si vous avez besoin du javascript et le bouton où il est, vous devez changer pour

function checkForm() { 
    //check all necessary things 
    var varAmount =....; //which will get after process insides javascript 
    window.opener.location = 'myaction.action?amount='+varAmount 
    // OR using the name of the opener window 
    //window.open('myaction.action?amount='+varAmount,"main"); 
} 
Questions connexes