btrevisol 0 Denunciar post Postado Agosto 18, 2011 Eu coloquei o alert no javasript, quando clico em um checkbox ele mostra uma janela escrita valor0, e se eu clicar em ontro checkbox, por exemplo o 5°, ele mostra o valor0,valor1, valor2, valor3, valor4, valor5 é isso mesmo? e no debug esta aparecendo a mesma coisa. Erro: document.getElementById("valor" + i) is null Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Agosto 18, 2011 poste como está o teu código atual Compartilhar este post Link para o post Compartilhar em outros sites
btrevisol 0 Denunciar post Postado Agosto 18, 2011 function somar_mostrar( el, i ) { alert( 'valor'+i ); document.getElementById('valor'+i).style.display='block'; document.getElementById('total').value = el.checked ? parseFloat( document.getElementById('total').value+el.value ): parseFloat(document.getElementById('total').value-el.value ); } <?php $conexao = mysql_connect("localhost", "root", "") or die(mysql_error()); $db = mysql_select_db("formulario"); $selec = "SELECT * FROM opcional"; $exec = mysql_query($selec, $conexao) or die(mysql_error()); $dados = mysql_fetch_assoc( $exec ); $i = 0; while( $dados = mysql_fetch_assoc( $exec ) ) { ?> <label><?php echo $dados['nome']; ?><input type="checkbox" name="<?php echo $dados['nome']; ?>" value="<?php echo $dados['valor'];?>" onclick="somar_mostrar( this, <?php echo $i; ?> )" /> <?php $i++; } ?> Eu coloquei só os pedaços que estou vendo, se quise posso postar o código todo. Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Agosto 18, 2011 vi um erro de html. Não fechou a tag label <label><?php echo $dados['nome']; ?> <input type="checkbox" name="<?php echo $dados['nome']; ?>" value="<?php echo $dados['valor'];?>" onclick="somar_mostrar( this, <?php echo $i; ?> )" /> </label> Compartilhar este post Link para o post Compartilhar em outros sites
btrevisol 0 Denunciar post Postado Agosto 18, 2011 Verdade estava faltando fechar o label. fiz isso e os probelmas de demorar para carregar e os checkbox marcarem sozinhos parou!! Mas ainda não esta retornando nenhum valor, e o debug continua com o erro. Erro: document.getElementById("valor" + i) is null Obrigado!! Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Agosto 18, 2011 você excluiu o SPAN ne?! então exclua a linha que chamava ele.. tipo.. cara, isso é básico. se você não entendeu isso, então quer dizer q você não entendeu o script. function somar_mostrar( el, i ) { //alert( 'valor'+i ); //document.getElementById('valor'+i).style.display='block'; document.getElementById('total').value = el.checked ? parseFloat( document.getElementById('total').value+el.value ): parseFloat(document.getElementById('total').value-el.value ); } assim, na boa.. reflita: http://wbruno.com.br/blog/2011/07/22/aprenda-basico/ Compartilhar este post Link para o post Compartilhar em outros sites
btrevisol 0 Denunciar post Postado Agosto 18, 2011 Cara eu entendi o script sim, e exclui as linhas do span e que chamava o span, esta correto. Mas ele ainda não soma os valores no campo texto, só mostra um na frente do outro. Obrigado pela ajuda. Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Agosto 18, 2011 aqui, eu te disse como resolver: esses valores são inteiros ? do tipo float? ou estão formatados em moeda brasileira ? parseInt(), parseFloat(), ou .replace() para corrigir a virgula. Compartilhar este post Link para o post Compartilhar em outros sites
btrevisol 0 Denunciar post Postado Agosto 18, 2011 Sim eu vi esse post seu de como eu resolvo esse problema, é que eu não sei como usar corretamente esses códigos, para ele pegar todos os valores checados para fazer a soma. Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
btrevisol 0 Denunciar post Postado Agosto 18, 2011 William, estou tentando resolver esse problema de somar os campos, mas não consegui, sera que você pode me dar uma luz!! Obrigado pela ajuda desde o começo. Abraço Compartilhar este post Link para o post Compartilhar em outros sites