2011-10-25 4 views
0

J'ai le code suivantDouble PopUP Onclick IE8

<script> 

    function Results() 
    { 
     document.report_form.action = "index.php?p=report_view"; 
     document.report_form.target = "_blank";  
     document.report_form.submit();    
     return true; 
    } 

    function CSV() 
    { 
     document.report_form.action = "csv.php"; 
     document.report_form.target = "_blank";  
     document.report_form.submit();    
     return true; 
    } 

</script> 

<form name='report_form' method='post'> 

    <input type='submit' name='view_table' value='Display' onclick="return Results();"> 
    <input type='submit' name='view_csv' value='Export CSV'  onclick="return CSV();"> 

</form> 

Lorsque vous utilisez Firefox ou Chrome, il ne déclenche pas une double pop-up, lorsque vous utilisez IE8, les utilisateurs cliquez une fois sur le bouton et soit 2 fenêtres pop-up ou 2 demandes de téléchargement apparaissent.

Je n'ai pas trouvé de solution à cela, pouvez-vous me montrer où je me trompe?

Merci

+0

Je suspecte ces codes 'document.report_form.target =" _blank "; document.report_form.submit(); ', on devrait ouvrir une nouvelle fenêtre avec un rapport. – Deeptechtons

+0

Vous soumettez deux fois le formulaire: supprimez simplement les lignes 'document.report_form.submit();' –

+0

vous avez raison Assistant de l'ombre, merci beaucoup –

Répondre

0

Essayez de retourner false; au lieu de retourner vrai;

+0

Sauf si vous expliquez et donnez plus de détails, cela devrait être un commentaire - la réponse devrait contenir plus de détails. –

+0

La réponse de l'Assistant Shadow fonctionne pour moi –

+0

@ShadowWizard - Normalement je serais d'accord pour dire que plus de détails est mieux, mais dans ce cas je pense qu'il est assez évident que cette réponse dit que les deux endroits dans le code de question _short_ ; 'devrait être changé en' return false; '. (Étant donné cet exemple de code, je ne peux pas penser à une autre interprétation.) Non pas que ça ne soit pas bien de savoir _why_ cela réglerait les choses, mais c'est assez d'informations pour que le code fonctionne ... – nnnnnn