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

    [jquery] passare parametri a evento

    Ciao mi chiedevo come potevo passare dei parametri a un metodo jquery.

    faccio un esempio x spiegarmi bene:


    codice:
    <div id="bottone">  CLICCAMI  </div>
    questo div sarà cliccabile e verà associato:

    codice:
    $(document).ready( function() {
    		
    		$("#elimina").click( function( " PARAMETRI CHE VORREI DARE" ) {
    	
    	
    		});
    	
    });

    io vorrei passare dal div html, dei parametri che saranno visto dentro a dove ho scritto PARAMETRI CHE VORREI DARE.


    Grazie, Davide

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    sintatticamente non puoi farlo cosi' e nell' esempio che proponi non avrebbe neanche troppo senso:
    esegui una funzione anonima al click, per di piu' su di un solo elemento,
    che motivo avresti di passare argomenti dall' esterno della funzione anonima?

    pero' si capisce che il caso reale e' diverso dall' esempio
    e si puo' risolvere in tanti tanti modi diversi

    intanto nella funzione eseguita al click puoi parlare dell' elemento che ha il attivato il gestore evento come $(this)
    qualsiasi proprieta' dell' elemento e' cosi' accessibile nella funzione, per esempio
    alert($(this).attr('id'));
    alert($(this).html());
    qualsiasi proprieta' arbitraria puo' essere stata salvata nell' elemento e riletta in qualsiasi momento via data
    e puoi sempre muoverti nell' xhtml via metodi di traversing
    (se per esempio quello che andresti ad usare come parametro puo' dipendere dalla presenza o dal contenuto di altri elementi)

    altrimenti tutto quello che definisci nella function al document ready e' disponibile anche nella function anonima del gestore evento
    codice:
    $(document).ready( function() {
    		var datiPerElimina='quello che vuoi'
    		$("#elimina").click(function() {
    			alert(datiPerElimina);
    		});
    });
    o ancora, se per esempio volessi richiamare una funzione, non anonima, che attende parametri devi sempre passare per una funzione anonima
    codice:
    function miaFunzione($el){
    	alert($el.html())
    }
    $(document).ready( function() {
    	$("#elimina").click( function(){miaFunzione($(this))});
    });
    questi sono esempi, dipende da quello che veramente devi fare
    ciao

  3. #3
    grazie mille, ora è tutto chiarissimo

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.