Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    240

    [IE]modificare Evento di un tag NON FUNZIONA

    Dopo aver clonato un tag ho la neccessita di cambiargli attributi.

    Per quanto riguarda id, name e value non ho problemi, ma non riesco a modificargli l'eventuale evento associato, tipo onChange, onclick etc.

    Ho provato di tutto
    da
    document.getElementById(NomeTag).onChange=funzione ;
    a
    document.QUEST.elements[NomeTag].onChange=funzione;

    a
    document.getElementById(nuovoNome).setAttribute("o nChange",funzione)

    naturalemnte con Mozzilla funziona perfettamento
    il problema ce l'ho solo con IE

    AIUTOOOO!!!

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    prima di tutto ricerca (con chiave "addevent") se n'e' parlato varie volte,
    i gestori eventi non sono attributi

    document.getElementById(NomeTag).onChange=funzione ;
    ...
    document.QUEST.elements[NomeTag].onChange=funzione;
    in entrambi i casi, onchange con la c minuscola

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

    nome funzione in stringa e con parametri

    Afferrato il concetto

    ho provato ad usare
    if (document.getElementById(nuovoNome).addEventListen er)
    {document.getElementById(nuovoNome).addEventListen er("onchange", funzione, false);}
    else if (document.getElementById(nuovoNome).attachEvent)
    {document.getElementById(nuovoNome).attachEvent("o nchange", funzione);}

    Il mio problema ora è
    che il nome della funzione che gli devo passare è incognita e la prelevo con
    myFunz= document.getElementById(nuovoNome).getAttribute("o nchange");

    inoltre la funzione a dei parametri che devo modificare prima di riassociare l'evento.

    se faccio ad esempio
    document.getElementById(nuovoNome).attachEvent("on change", myFunz);

    mi da errore di "Incopatibilità di tipi"

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    240
    Ok ho capito come passare i parametri:

    document.getElementById(nuovoNome).attachEvent("on change",function(){pippo(1)});

    Ma passare il nome di una funzione contenuta in una stringa!!!!

  5. #5
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    non sono certo di aver seguito, ma puoi far riferimento ad una funzione anche cosi'

    function pluto(cosa){alert(cosa);}
    var pippo="pluto";
    window[pippo]('ciao');

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

    non va

    No cosi non va
    myFunz="pippo";
    document.getElementById(nuovoNome).attachEvent("on change",window[myFunz](1));

    mi esegue la funzione all'associazione, ma mi da errore sull'onchange!

  7. #7
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    myFunz="pippo";
    document.getElementById(nuovoNome).attachEvent("on change",function(){window[myFunz](1)});

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    240
    sull'onchange mi da l'errore:

    proprietà o metodo non supportato dall'oggetto!!


  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    240
    Come non detto

    var myFunz="pippo";
    document.getElementById(nuovoNome).attachEvent("on change",function(){window[myFunz](1)});

    mettendo var davanti a myFunz funziona...

    Ora però ho un'altro problema anche i parametri sono dinamici!!!


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.