Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2006
    Messaggi
    280

    [JQuery] problema bindare funzione sulla classe

    Ciao a tutti, ho un problema. Bindo una funzione al click su tutti gli elementi con una certa classe, e mi pare di capire che questa venga eseguita una volta per ogni classe esistente.
    Quello che voglio fare io in pratica è richiamare una funzione "al click" , eseguire quella funzione UNA sola volta e accedere all'elemento cliccato con il this.

    Di seguito il mio codice :

    $('.classedacliccare').click(function(){
    $(this).hide();
    alert($(this).attr('attributo');
    });


    Allora questa funzione nasconde l'elemento cliccato (non so se lo fa N volte), e mi fa uscire N alert.

    In cosa sbaglio? è possibile bindare una funzione su una classe ed eseguirla SOLO sull'elemento cliccato una sola volta??

    Grazie a tutti.

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    (non so se lo fa N volte), e mi fa uscire N alert.
    provare no? troppa fatica? cmq no, un click un alert

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2006
    Messaggi
    280
    Provare cosa..

    L'elemento hide viene nascosto (quindi nasconderlo n volte equivale a nasconderlo una volta ), ormai na volta nascosto rimane nascosto...
    Mentre l'alert viene fatto n volte (per certo) come ho scritto, ma ciò che mi interessa è fare uscire UN alert solo.

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    se dici che non sai se lo fa N volte, presumo che tu non abbia nemmeno provato
    cmq un click un alert, il problema è altrove

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2006
    Messaggi
    280
    Il codice è quello.. ora posto entrambi i codici sia js che html. Vorrei che al click su un link venga chiamata una funzione UNA sola volta, la funzione nello specifico esegue un alert.
    Html :
    codice:
    <a attributo="Uno" class="classedacliccare" >Uno</a>
    <a attributo="Due" class="classedacliccare" >Due</a>
    <a attributo="Tre" class="classedacliccare" >Tre</a>
    <a attributo="Quattro" class="classedacliccare" >Quattro </a>
    Javascript
    codice:
    $('.classedacliccare').click(function(){
    $(this).hide();
    alert($(this).attr('attributo');
    });

    Con questo codice esatto, per ogni click ho 4 alert. Ne vorrei uno.
    Secondo voi il problema dove sta?

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    http://jsbin.com/etuziw/1

    come vedi un click un alert, il codice è quello che hai postato, evidentemente hai qualche altra cosa che crea problemi nella tua pagina oppure non ho capito ancora qual'è il problema, cmq il codice va bene cosi com'è.

    p.s. questo problema lo riscontri su tutti i browser?

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2006
    Messaggi
    280
    Si in effetti provando il mio codice da solo funziona, io lo metto in una cella all'interno di un datatable jquery, non so se questo può creare qualche tipo di conflitto.

    Comunque vi ringrazio.

    A presto.

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.