Estou desenvolvendo uma aplicação em ASP e cheguei numa parte onde preciso usar java para somar valores dos checkbox`s, detalhe: os valores dos checkbox são variaveis(loop), eles são retirados de um bd conforme o resultado da busca que é feita pelo usuário no site.
tentei este script aqui:
Bom, quando os valores são constantes este script funciona, mas quando eu coloco o valor da variavel como no ex abaixo ele só mostra uma mensagem escrito “NaN”, alguem tem uma idéia ou um script que possa me ajudar?
aguardo respostas…
Bom, pra começar, Java não é Javascript, que é o que você está usando.
Você pode usar parseFloat no lugar do parseInt para converter com casas decimais, e o número deve estar com o separador de decimal “.”, e não “,”. Acho que isso já basta.
A
alegg
em 1º lugar valeu pela dica do parseFloat, ja fiz a alteração no script, porém infelizmente assim mesmo não tive sucesso, tentei de varios modos, sempre o alert sai com aquela msg “NaN” ou então nem responde.
Estou testando com numeros decimais inteiros para facilitar, mas acredito que o problema seja nesta linha if (document.forms.form1.vlr.checked) onde ele verifica se o “vlr” esta selecionado, só que por ser um loop a pagina carrega diversos checkbox`s com o mesmo nome e id (“vlr”). Deve haver algum comando a mais que é usado nesses casos, ou algum outro meio de realizar está soma. Espero que alguem possa me ajudar a solucionar o problema.
Desde ja agradeço…
<HTML><HEAD><TITLE>Teste</TITLE><SCRIPTLANGUAGE="JavaScript"><!--var total = 0;function soma(campo) { if (campo.checked) total += eval(campo.value); else total -= eval(campo.value); document.sistema.total.value = total;}//--></SCRIPT></HEAD><BODY><FORMMETHOD=POSTACTION=""name="sistema">
1<inputtype="checkbox"name="valor"value="1.5"onClick="soma(this)">
2<inputtype="checkbox"name="valor"value=".5"onClick="soma(this)">
3<inputtype="checkbox"name="valor"value="3"onClick="soma(this)">
4<inputtype="checkbox"name="valor"value="4"onClick="soma(this)"><inputtype="text"name="total"value=""></FORM></BODY></HTML>
Em javascript os campos somente separados por “.” são aceitos. Separados por “,” deverão ser convertidos antes da soma.
A
alegg
julianostr!! valeu brother!! era exatamente isso!! agradeço a todos outros que também se habilitaram a tentar me ajudar, meu problema ja foi resolvido! mais uma vez obrigado a todos!!