1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.
  2. Está disponível o Comparador ZWAME em versão beta.
    Mais informações.
    Remover anúncio

Dúvida de JavaScript

Discussão em 'Programação' iniciada por Andr0m3da, 6 de Junho de 2002. (Respostas: 12; Visualizações: 1523)

  1. Andr0m3da

    Andr0m3da Power Member

    Ora bem ando a mexer em JavaScript e num dominio onde não tinha andado.
    Objectos.

    Estou a criar objectos HTML em JavaScript em RunTime o problema é atribuir eventos e isso, passo a explicar.

    NO JAVASCRIPT
    function carrega(inForm) {
    var option0 = new Option ("[Tipos de Questões]");
    inForm.tipos.options[0]=option0;
    for (var i=0; i < tiposQuestao.length; ++i) {
    option0 = new Option (tiposQuestao);
    inForm.tipos.options[i+1]=option0;
    inForm.tipos.options[i+1].value=i;
    }
    //alert(inForm.tipos.options.length);
    }

    NO HTML
    <*select id="tipos" size="0" onchange="inicia(options.value);">
    </select>

    <*br/>
    <*input type="button" value="Carregar Lista de Questões" onClick="carrega(this.form)"/>

    até aqui tudo bem isto funciona as mil maravilhas, clicko no butão e crio no menu select todas as options que tenho num array.

    passo seguinte, consoante a escolha crio algo diferente. No caso de ser a primeira escolha faço isto:

    if (inForm == 0) {
    //alert(inForm);
    elemento = document.createElement("input");
    elemento.value="ola";
    elemento.type="button";
    elemento.onClick("alert('ola')");
    }

    ora bem eu crio o butão tudo ok, dou-lhe um valor, mas definir o evento é que tá grosso.

    elemento.onClick("alert('ola')");
    nao funciona

    elemento.onClick=alert('ola');
    elemento.onClick="alert('ola')";
    n funciona

    já andei pela JRef da netscape, pelas propriedades descritas no echoecho.com entre outros e isto continua sem solução, deparei com isto no inicio da noite e já estou cansado, posso até já nem ver nada a frente. alguma ideia?

    os "*" no html é só para o forum não interpretar o html e assim se ver o código.

    update:
    na reference dão estes exemplos.
    window.onclick=fun1;
    document.onclick=fun2;

    e experimentei tb
    elemento.click=alert('ola');
    e isto faz com que o alert seja activo antes da criação do butão no HTML.

    Damm tou cansado.

    elemento.click=alert
     
    Última edição: 6 de Junho de 2002
  2. The Zombie

    The Zombie Power Member

    Manda uma PM à Apocalypse que ela é barra em Java e Javascript!!
     
  3. AVxAMD

    AVxAMD I fold therefore I AM

    "Manda uma PM à Apocalypse que ela é barra em Java e Javascript!!"

    Boas grande amigo The Zombie.
    Ela? ou querias dizer ele?
    Cuidado com esses lapsos,
    se não lá vai começar outra guerra no FORUM
    e por azar é logo aqui na minha zona. :)
    Se realmente fôr uma senhora,
    então peço as minhas desculpas por estar a pôr
    esta questão.
    Um abraço Zombie.
     
  4. Praetor

    Praetor Power Member

    AVXAMD: é uma ela....mas shhh...não digas ao Raptor... :D :D
     
  5. AVxAMD

    AVxAMD I fold therefore I AM

    Praetor, pois é, esqueci-me do Rap...
    Estou a ver que este ano o Rap fica sem prenda de natal. :-D

    Praetor, obrigado por me teres esclarecido este enigma.
     
  6. possessed

    possessed Full Throttle BOINC Roller

    felizmente o raptor não para muito por estas andanças senão era muito mau se ele visse isto :9)
     
  7. Praetor

    Praetor Power Member

    heh, já reparam que o rapaz anda muito ocupado?? :D
    Já quase nem spamma...errrr...posta :D
     
  8. Andr0m3da

    Andr0m3da Power Member

    Epah ja consegui resolver:

    era:
    elemento.onclick=NomeDaFunção;

    sem parentisis e o "C" de click minusculo.

    ;)

    axo que o erro foi do avançado da hora.
     
  9. The Zombie

    The Zombie Power Member

    Avelino, é mesmo uma gaffe tua. A Apocalypse é mesmo uma rapariga, sim!!:) :)
    Não, não me enganei!!
     
  10. AVxAMD

    AVxAMD I fold therefore I AM

    Boas The Zombie.
    Amigo, já vi... sorry man.
    Acabei de saber, grande enigma que eu passei,
    até já estáva baralhado.
    Um abraço.
     
  11. Praetor

    Praetor Power Member

    lol no meio disto tudo ninguêm respondeu ao post do andromeda, nem ligaram a ele (quando ele disse que conseguiu safar-se)...

    poor andromeda!

    Mas um bom abraço por teres resolvido o problema :D
     
  12. Korben_Dallas

    Korben_Dallas Zwame Advisor

    lol por acaso tive a ler e pensei nisso mesmo... Andr0m3da sorry não te pude ajudar mas ainda bem que conseguiste :P
     
  13. Andr0m3da

    Andr0m3da Power Member

    pois eu reparei, num me ligaram nenhuma, no prob, resolvi desta vez sem ajuda.
    Mas ha sempre outros foruns....
     

Partilhar esta Página