Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Jonata Rodrigues

onClick nã guarda valor na Select

Recommended Posts

Galera estou com um script que uso onClick pra executar uma autoSoma, mas quando clico no Select e seleciono a Option dá os valores no input de resultado mas na Select da Option fica sem nenhum valor! Ideias de como deixar o Value na Select ser mostrado!?

:yes: :skull: :skull: :yes:

 

Ver um Exemplo Clique Aqui

<html>
<head>
<title>SOMA</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<script language="javascript">
        function Somaarroz(){
            document.formulario.totalarroz.value = (parseFloat(document.formulario.arroztiojorge.value) + parseFloat(document.formulario.arrozgoianinho.value) + parseFloat(document.formulario.arrozgold.value) + parseFloat(document.formulario.arroztiojoao.value)) * 1.00;
            decimal(document.forms[0].totalarroz);
        }
        function decimal(x)
        {
            if(x.value.indexOf(".") == -1)
                x.value += ".00";
            else
                x.value += "0";
        }
    </script>


</head>
<body>
  
<form name="formulario" method="post" action="insere.php">

    <!-- Exemplo -->
    <!-- AQUI FICA A TABELA DE ARROZ -->
    <table id="tabela">
    <tr id="trtabela">
        <td id="tdtabela">Arroz Tio Jorge:</td>
        <td id="tdtabela">R$ 5,10</td>
        <td id="seltabela">Quantidade: <select name="seltiojorge" id="sel-option-tio-jorge" onClick="decimal(this);Somaarroz();">
            <option value=""></option>
            <option value="1">1x</option>
            <option value="2">2x</option>
            <option value="3">3x</option>
            <option value="4">4x</option>
        </select></td>
        <td id="tdtabela">R$<input type="op-arroz-tio-jorge" name="arroztiojorge" id="input-op-arroztiojorge" readonly value="0" size="1" ></td>
    </tr> <tr id="trtabela">
    <td id="tdtabela">Arroz Gold:</td>
    <td id="tdtabela">R$ 8,16</td>
    <td id="seltabela">Quantidade: <select name="selgoianinho" id="sel-option-goianinho" onClick="decimal(this);Somaarroz();">
        <option value=""></option>
        <option value="1">1x</option>
        <option value="2">2x</option>
        <option value="3">3x</option>
        <option value="4">4x</option>
    </select></td>
    <td id="tdtabela">R$<input type="op-arroz-goianinho" name="arrozgoianinho" id="input-op-arrozgoianinho" readonly value="0" size="1" ></td>
</tr>
    <tr id="trtabela">
        <td id="tdtabela">Arroz patrono</td>
        <td id="tdtabela">R$ 12,10</td>
        <td id="seltabela">Quantidade: <select name="seltiojoao" id="sel-option-tiojoao" onClick="decimal(this);Somaarroz();">
            <option value=""></option>
            <option value="1">1x</option>
            <option value="2">2x</option>
            <option value="3">3x</option>
            <option value="4">4x</option>
        </select></td>
        <td id="tdtabela">R$<input type="op-arroz-tiojoao" name="arroztiojoao" id="input-op-arroztiojoao" readonly value="0" size="1"></td>
    </tr>

    <tr id="trtabela">

        <td id="tdtabela">Arroz Mineirinho</td>
        <td id="tdtabela">R$ 9,10</td>
        <td id="seltabela">Quantidade: <select name="selgold" id="sel-option-gold" onClick="decimal(this);Somaarroz();">
            <option value=""></option>
            <option value="1">1x</option>
            <option value="2">2x</option>
            <option value="3">3x</option>
            <option value="4">4x</option>
        </select></td>
        <td id="tdtabela">R$<input type="op-arroz-gold" name="arrozgold" id="input-op-arrozgold" readonly value="0" size="1"></td>
        </tr>
    <tr><td id="tdtabela">Total em arroz: R$ <input type="text" name="totalarroz" value="0" maxlength="255" size="2"></td></tr>

</table>
    <!-- AQUI TERMINA A TABELA DE ARROZ -->


    <!--  SCRIPT DE SOMA DO ARROZ  -->
    <script type="text/javascript">
            var $goianinho_select = document.getElementById('sel-option-goianinho'),
                    $goianinho_input  = document.getElementById('input-op-arrozgoianinho'),
                    goianinhovalue = {
                        1: 8.16,
                        2: 16.32,
                        3: 24.64,
                        4: 33.28
                    };

            $goianinho_select.addEventListener('change', function(){
                $goianinho_input.value = goianinhovalue[this.value] || 0;
            });
            var $tiojorge_select = document.getElementById('sel-option-tio-jorge'),
                    $tiojorge_input  = document.getElementById('input-op-arroztiojorge'),
                    tiojorgevalue = {
                        1: 5.10,
                        2: 10.20,
                        3: 15.30,
                        4: 20.40
                    };

            $tiojorge_select.addEventListener('change', function(){
                $tiojorge_input.value = tiojorgevalue[this.value] || 0;
            });
            var $gold_select = document.getElementById('sel-option-gold'),
                    $gold_input  = document.getElementById('input-op-arrozgold'),
                    goldvalue = {
                        1: 9.10,
                        2: 14.20,
                        3: 23.30,
                        4: 32.40
                    };

            $gold_select.addEventListener('change', function(){
                $gold_input.value = goldvalue[this.value] || 0;
            });
            var $tiojoao_select = document.getElementById('sel-option-tiojoao'),
                    $tiojoao_input  = document.getElementById('input-op-arroztiojoao'),
                    tiojoaovalue = {
                        1: 12.10,
                        2: 24.20,
                        3: 36.30,
                        4: 48.40
                    };

            $tiojoao_select.addEventListener('change', function(){
                $tiojoao_input.value = tiojoaovalue[this.value] || 0;
            });
        </script>
        <!--  Fim do script de soma do azzor  -->
</form>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

O evento onclick não faz sentido em tags <select>, use apenas onchange.

Além disso, não use eventos inline.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Testei o onChange e não rolou cara! Testei os cont. de eventos e os que mais produziram resultados foram onBlur e onClick.

onChange nem pegou a função, testei na Select e no Input. Sou iniciante em JavaScript e não tenho muita experiencia de como proceder nesse caso ainda! :pinch:

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.