Visualizzazione dei risultati da 1 a 7 su 7

Discussione: [JAVASCRIPT] e submit

  1. #1

    [JAVASCRIPT] e submit

    Ciao a tutti... ho creato un oggetto per il controllo dei form (operazione noiosa da fare di volta in volta a mano).
    Questo oggetto è una modifica di un sistema realizzato in un articolo di questo sito. Il sistema funziona bene su molti browser, ma su IE da problemi... funziona bene in locale, online non funziona bene.
    L'oggetto richiama una funzione alla pressione del pulsante SUBMIT intercettando l'evento onSubmit() del pulsante. IN IE mi sembra che il processo venga avviato 2 volte, infatti mi inserisce 2 volte i dati nel DB.
    E' risolvibile questo problema?

  2. #2
    l'evento submit devi gestirlo nel form, non nel pulsante:

    codice:
    <form onsubmit="..." ... >
    ciao

  3. #3
    si ok... io l'ho creato direttamente da JS per il form

  4. #4
    Originariamente inviato da rinosan_76
    si ok... io l'ho creato direttamente da JS per il form
    e allora posta il codice incriminato.

  5. #5
    ok ti posto il codice pulito di tutte quelle cose che funzionano di sicuro... altrimenti sarebbe infinito.
    codice:
    function objForm(a){
     var obj_H=this;
    // proprietà
    .....
    // metodi gestione proprietà
    ....
    // metodi
     this.toForm=function(a,b){ var d = eval('document.'+a+'.'+b); d.focus(); };
     this.Focus=function(){
       // aggiunto il sistema per date il focus alle textarea ed alle select (quello di HTML.it solo gli input)
       .......
                     }
      this.start=function(){
                        if(this.campo!=null) this.toForm(this.name,this.campo);
                        if(document.getElementsByTagName) this.Focus();
                        if(!document.getElementById || !document.createElement) return;
                         document[this.name].onsubmit=function(){
                         if(obj_H.validateForm()){
                            document[this.name].submit();
                         }else{ 
                            alert("ATTENZIONE: non tutti i campi sono stati compilati correttamente.");
                            return false;
                         }
                       }
                  };
     this.validateField=function(field, func){
      // simile a quello di HTML.it
       ......
                              }
     this.validateForm=function(func){
    
      // simile a quello di HTML.it
       .......
                              }
    
    // metodi per il controllo dei dati (isMail, isNumeric....)
     ......
    }
    Se poi non capisci dimmelo che posto tutto.

  6. #6
    mettendo

    return true

    sotto

    document[this.name].submit();

    sembra andato tutto a posto... può essere?

  7. #7
    correggo... ho duvuto commentare anche:

    // document[this.name].submit();

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.