0

Botões vs Menu Horizontal

criado por Sousa VArela em 24/08/2010 5:06am
Oi Pessoal!

Tenho dois botões em minha aplicação:

<input type="submit" name="acao" id="adicionar" value="adicionar" />
<input type="submit" name="acao" id="editar" value="editar" />

Quero usalos na barra de menu horizontal e coloquei desta forma:

  • <a href="#" onclick="document.getElementById('adicionar').click()"><em class="Adicionar"></em>Adicionar</a>

  • <a href="#" onclick="document.getElementById('editar').click()"><em class="Editar"></em>Editar</a>


  • Desta forma funciona muito bem, mas basta apagar os botões e tudo para de funcionar...
    (Não pretendo ter os botões, apenas usar o menu horizontal)
    Obrigado

    Abraços

    Lista de Respostas:

    +1
    Resposta Final (Undo)
    24/08/2010 1:21pm
    (~14 anos atrás)
    Cara
    Seu form tem que ter um ID

    <form id="formCad">

    Aí através do id do formulário é que você vai submeter o formulário assim...

    <a href="javascript: void(0);" onclick="document.getElementById('formCad').submit()"><em class="Adicionar"></em>Adicionar</a>

    <a href="javascript: void(0);" onclick="document.getElementById('formCad').submit()"><em class="Editar"></em>Editar</a>

    O lance é o seguinte...
    Você utilizava os valores dos botões para verificar se era edição ou adição.
    Bem...
    Isso não vai mais funcionar.
    pelo visto você vai ter que criar um input hidden e inserir o valor necessário...

    <input type="hidden" id="acao" name="acao" />

    <a href="javascript: void(0);" onclick="document.getElementById('acao').value = 'adicionar';document.getElementById('formCad').submit()"><em class="Adicionar"></em>Adicionar</a>

    <a href="javascript: void(0);" onclick="document.getElementById('acao').value = 'editar';document.getElementById('formCad').submit()"><em class="Editar"></em>Editar</a>

    Entendeu???

    E para não ficar este tanto de código aí na tag.
    Você poderia criar uma função...

    <script>
    function adicionar(){
    document.getElementById('acao').value = 'adicionar';
    document.getElementById('formCad').submit();
    }
    </script>

    <a href="javascript: void(0);" onclick="adicionar()"><em class="Adicionar"></em>Adicionar</a>

    Viu, o código fica muito mais claro.
    Observe também que eu troquei isto
    href="#"
    Por isto
    href="javascript: void(0);"

    É melhor usar o void(0) para determinar que não haverá execução, pois alguns navegadores atribui uma ação de clique e abre a página com um # no final.

    0
    25/08/2010 7:50am
    (~14 anos atrás)
    Sousa VArela respondeu:
    Oi! Obrigado pela dica...
    Deu certo, na mosca!
    Sou tem fera nessa fórum.
    Abraços
    Amigo

    Nova Resposta:

    (Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)