Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    tasto input con controllo onclick

    Salve a tutti, ecco un dubbio da vero nubbio. Sto realizzando un form di input dati con vari controlli elementari.

    In una pagina ad esempio quando riempo 4 caselle facenti riferimento ad una determinata analisi al cambio della quarta cella faccio eseguire il controllo della somma dei valori con il seguente comando:

    Codice PHP:
    onchange=\"ctrlSomma_ele()\" 
    Questo stesso comando però è associato anche alla pressione del tasto di invio dati per evitare di escludere il caso in cui la quarta non cella venga modificata
    quindi

    Codice PHP:
    onclick=\"ctrlSomma_ele()\" 
    Purtroppo però anche se trovo la condizione di errore compare giustamente l'alert ma alla pressione del tasto ok i dati vengono cmq spediti e accedo alla seconda pagina del form di input... cosa devo fare per bloccare il caricamento? :master: devo cambiare la function inserendo che so un comando stop, break, o altro oppure devo usare un altro tipo di finestra e non un alert.

    Grazie in anticipo!

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    240

    return

    metti un return!

  3. #3
    grande ho messo nel form...

    Codice PHP:
    onsubmit=\"return ctrlSomma_ele()\" 
    e dopo l'if nella funzione

    Codice PHP:
    return false 
    E in questo modo tutto funziona

    Però se provo a farlo con più funzioni... in questo modo

    Codice PHP:
    onsubmit=\"return ctrlSomma_ele() &&  ctrlSomma_imm() && ctrlSomma_chi()\" 
    Non funziona... come mai? sbaglio sintassi, operatore logico, entrambi? Qual'è la giusta sintassi?
    In questo modo se ctrlSomma_ele() è soddisfatto si procede al caricamento della pagina, anche se le altre function nonn sono soddisfatte.

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    240

    NOOOOO

    il return lo devi mettere subito dopo l'alert ..... dentro la funzione

  5. #5
    e così ho fatto... forse mi sono spiegato male... guarda ho fatto così:

    Codice PHP:
    if(somma_2!=100.00)
      {
      
    alert("La somma delle composizioni immediate deve essere =100. Adesso vale " +somma_2" !");
      return 
    false;
      }

    che penso sia corretto anche perchè da solo funziona... il problema è quello che ho scritto sopra

  6. #6
    il problema penso siano gli operatori logici. Ad esempio come detto

    Codice PHP:
    onsubmit=\"return ctrlSomma_ele()\" 
    funziona mentre

    Codice PHP:
    onsubmit=\"return ctrlSomma_ele() &&  ctrlSomma_imm() && ctrlSomma_chi()\" 
    non funziona.

    Così come se metto un operatore logico in questa condizione funzionante

    Codice PHP:
    if(somma_3<70.00
    trasformandola in

    Codice PHP:
    if(somma_3<70.00 && somma_3>100.00
    essa non funziona più... ma che è ... gli operatori logici mi odiano?

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    240

    se metti le parentisi????

    oddio .......

    prova a mettere le parentesi

    return (ctrlSomma_ele() && ctrlSomma_imm() && ctrlSomma_chi())



    :master:

  8. #8
    ehehe già provato niente da fare

  9. #9
    molto poco elegantemente ho risolto raggruppando le tre funzioni in una unica

    Se cmq qualcuno avesse la soluzione al problema posti pure sono molto curioso

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.