2012-09-17 8 views
1

J'ai un formulaire avec des champs de saisie et un bouton d'envoi. Le formulaire doit être soumis à une servlet. Lorsque je clique sur Envoyer/Retour, tout va bien dans Chrome ou IE, mais cela ne fonctionne pas sur Firefox. Une idée sur le problème?Le bouton d'envoi de formulaire ne fonctionne pas dans Firefox mais fonctionne dans Chrome ou IE

HTML:

<body> 
    <div align="center"> 
    <form> 

     <table cellpadding ='2' border ='0'> 
     <tr> 
      <td> 
       <label for="Database">Database</label> 
      </td> 
      <td> 
       <input id="database" type="text" onchange="setdirtybit()" name="Database" style="width:200px"></input> 
      </td> 
     </tr> 
     <tr> 
      <td> 
       <label for="Script">Script</label> 
      </td> 
      <td> 
       <input id="script" type="text" onchange="setdirtybit()" name="Script" style="width:200px"></input> 
      </td> 
     </tr> 
     </table> 
     <br /> 
      <input type ='submit' value='Submit' onclick='Close()'></input> 
    </form> 
    </div> 
</body> 

JavaScript:

function Close() 
    { 
     window.returnValue = ""; 
     if(window.dirtyFlag) 
     { 
      document.forms[0].method="post"; 
     document.forms[0].action="/nbreports/updates/"; 
     document.forms[0].submit(); 
      window.returnValue = getValue('database') + '/' + 
         getValue('script') ; 
     } 
     window.close(); 
    } 

    function getValue(varName) 
    { 
     if(document.getElementById(varName) == null) 
      return ""; 
     if(document.getElementById(varName).value == null) 
      return ""; 
     else 
      return document.getElementById(varName).value; 
    } 

    function setdirtybit() 
    { 
     window.dirtyFlag = 1; 
    } 
+3

ce que fait le 'Fermer () 'méthode faire? Pensez à poster son code, distillé à ce qui est pertinent à ce problème. – Shmiddty

+0

La combinaison de SUBMIT et ONCLICK n'est pas simple. Vous devez gérer l'événement correctement. –

+0

Cette page s'affiche comme un popup. La méthode Close() est destinée à renvoyer les valeurs à la page parente. Le code a été ajouté – dharmendra

Répondre

0

mettre un identifiant sur votre bouton soumettre, les faire comme ceci:

$(document).ready(function(){ 
    $('#submitButtonId').click(function(){ 
     var url = 'myServletUrlHere'; 
     var data = $('form').serialize(); 

     $.ajax({ 
      type: 'POST', 
      url: url, 
      data: data, 
      success: alert("It worked!") 
     }); 
    }); 
}); 
+0

-1 La question ne dit rien à propos de jQuery. – Snuffleupagus

+0

@Snuffleupagus Alors? il n'a pas dit que je ne pouvais pas l'utiliser. Je lui ai donné une réponse à son problème en utilisant jQuery. Alors pourquoi refuser ma réponse? – leobelones

1
$('#mytextfield').change(function(e) { 
    $('input[type=submit]').focus(); 
}); 
Questions connexes