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

    Passaggio di più funzioni o una funzione con più parametri con onclick

    Ciao A Tutti

    Non riesco a scrivere più di due word con la funzione chiamata dall' onClick

    Premetto che la seguente formula funziona correttamente, e non riesco a capire perchè non funziona con l'aggiunta di una terza funzione o di un terzo parametro.

    Funzione ok : onClick="Modifica1(in_val1),Modifica2(in_val2)"

    è possibile passare più di un parametro ad una funzione?
    ad esempio
    Non funzionante: onClick="ModificaTutti(in_val2,in_val3)"

    se si qual'è la sintassi più corretta tra le seguenti:

    onClick="ModificaTutti(in_val1,in_val2,in_val3)"
    oppure
    onClick="Modifica1(in_val1),Modifica2(in_val2),Mod ifica3(in_val3)"

    Inoltre qual'è il limite massimo di parametri da poter passare ad una funzione?..io dovrei mandarne 7!

    Spero di essere stato chiaro
    Grazie mille per la risposta
    Ciao

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    539
    ciao,
    innanzi tutto più comandi/funzioni li devi separare con punto e virgola e non semplice virgola

    onClick="Modifica1(in_val1),Modifica2(in_val2)"

    diventa

    onClick="Modifica1(in_val1); Modifica2(in_val2)"

    per quanto riguarda il numero di valori puoi inviare tanti valori quanti ne accetta la funzione;

    function prova() la chiami con prova();
    function prova(val1) la chiami con prova('ciao');
    function prova(val1, val2, val3) la chiami con prova('ciao', 1, 0)...e così via...

  3. #3
    a dire il vero tu ne puoi passare quanti ne vuoi di argomenti ad una funzione. Solitamente la funzione gestisce solo quelli definiti nella sua definizione:

    Ad esempio:
    codice:
    function MyTest(uno, due, tre){
       alert(uno+" "+due+" "+tre);
    }
    
    MyTest("pippo", "ti", "saluta", "tanto", "e", "ti", "manda", "un", "bacio");
    Verrà fatto l'alert solo dei primi 3 argomenti, "pippo ti saluta", gli altri saranno ignorati. Però non ci sono errori nel codice.

    Tuttavia, JS offre una funzionalità per gestire un numero non fisso di argomenti, è l'array arguments, definito all'interno delle funzioni.

    codice:
    function MyBetterTest(){
       var txt = "";
       for(var i = 0; i < arguments.length; i++) txt += arguments[i] + " ";
       alert(txt.substr(0, txt.length - 1)); 
    }
    
    MyBetterTest("pippo", "ti", "saluta", "tanto", "e", "ti", "manda", "un", "bacio");
    Otterrai l'alert di tutto "pippo ti saluta tanto e ti manda un bacio".
    I DON'T Double Click!

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.