RICK OURO Postado Janeiro 5, 2010 Denunciar Share Postado Janeiro 5, 2010 (editado) Olá galera, beleza?Sou iniciante em javascript e me deparei com um baita problema, já faz faz 1 mese e não consegui resolver o problema.ex: na primeira linha o valor 7 sera distribuido para a linha 2 e 3 e a linha 1 fica 0 (zero), isso quando clicar no radio (n/a)quando clicar no radio (sim) teria que voltar o valor inicial.quando clicar no radio (não) tem que subtrair o valor inicial do total abaixo.Se alguém quiser fazer o código e vender, dependendo do valor eu compro.grato<HTML> <HEAD> <TITLE> Redistribuição de Valores </TITLE> <script LANGUAGE="JavaScript"> var ini = false; function calcula(item,orig,dest1,dest2){ var total = 0; var elem = document.getElementById('FrmSistema').elements; if (item == 'A') { alert(elem.valor00.id); if (!ini){ document.getElementById(orig.substring(0,7)).value = 0; document.getElementById(dest1.substring(0,7)).value = parseInt(document.getElementById(dest1.substring(0,7)).value) + parseInt(dest1.substring(8)); document.getElementById(dest2.substring(0,7)).value = parseInt(document.getElementById(dest2.substring(0,7)).value) + parseInt(dest2.substring(8)); ini = true; } } if (item == 'S') { if (ini){ document.getElementById(orig.substring(0,7)).value = parseInt(orig.substring(8)); document.getElementById(dest1.substring(0,7)).value = parseInt(document.getElementById(dest1.substring(0,7)).value) - parseInt(dest1.substring(8)); document.getElementById(dest2.substring(0,7)).value = parseInt(document.getElementById(dest2.substring(0,7)).value) - parseInt(dest2.substring(8)); ini = false; } } if (item == 'N') { if (ini){ document.getElementById(orig.substring(0,7)).value = parseInt(orig.substring(8)); document.getElementById(dest1.substring(0,7)).value = parseInt(document.getElementById(dest1.substring(0,7)).value) - parseInt(dest1.substring(8)); document.getElementById(dest2.substring(0,7)).value = parseInt(document.getElementById(dest2.substring(0,7)).value) - parseInt(dest2.substring(8)); ini = false; } } /*CONTA A QUANTIDADE DE RADIO */ for (var i = 0; i < elem.length; i++) { if (elem[i].type == 'radio') { var qtd_elem = parseInt(elem.length/3); } } /*CALCULA */ for (var j = 0; j < qtd_elem; j++ ) { var D = 2; num = "00" + j; document.getElementById('lbValue_'+num.slice(-D)).innerHTML = document.getElementById('valor'+num.slice(-D)).value; if (document.getElementById('valor'+num.slice(-D)).checked == true) { total += parseInt(document.getElementById('valor'+num.slice(-D)).value); } } /*MOSTRA O TOTAL */ document.FrmSistema.total.value = total; } </SCRIPT> <script LANGUAGE="JavaScript"> /*FUNÇÃO SOMA */ function somaTotal() { var elem = document.getElementById('FrmSistema').elements; var qtd_elem = parseInt(elem.length/3); for (var j = 0; j < qtd_elem; j++ ) { var D = 2; num = "00" + j; document.getElementById('lbValue_'+num.slice(-D)).innerHTML = document.getElementById('valor'+num.slice(-D)).value; } } </SCRIPT> </HEAD> <BODY onload="somaTotal()"> <div id="lblValues"></div> <FORM METHOD="get" ACTION="" name="FrmSistema" id="FrmSistema" > <TABLE> <TR> <TD>valor</TD> <TD>sim</TD> <TD>não</TD> <TD>n/a</TD> </TR> <TR> <TD bgcolor='#FF9900'><div id="lbValue_00"></TD> <TD><input id="1" type="radio" name="valor00" value="7" onClick="calcula('S','valor00-7','valor01-4','valor02-3')" checked></TD> <TD><input id="2" type="radio" name="valor00" value="7" onClick="calcula('N','valor00-7','valor01-4','valor02-3')"></TD> <TD><input id="3" type="radio" name="valor00" value="7" onClick="calcula('A','valor00-7','valor01-4','valor02-3')"></TD> </TR> <TR> <TD bgcolor='#FFFF66'><div id="lbValue_01"></TD> <TD><input id="4" type="radio" name="valor01" value="6" onClick="calcula()" checked></TD> <TD><input id="5" type="radio" name="valor01" value="6" onClick="calcula()"></TD> <TD><input id="6" type="radio" name="valor01" value="6" onClick="calcula()"></TD> </TR> <TR> <TD bgcolor='#FFFF66'><div id="lbValue_02"></TD> <TD><input id="7" type="radio" name="valor02" value="3" onClick="calcula()" checked></TD> <TD><input id="8" type="radio" name="valor02" value="3" onClick="calcula()"></TD> <TD><input id="9" type="radio" name="valor02" value="3" onClick="calcula()"></TD> </TR> <TR> <TD bgcolor='#0099FF'><div id="lbValue_03"></TD> <TD><input id="10" type="radio" name="valor03" value="3" onClick="calcula('S','valor03-3','valor04-1','valor05-2')" checked></TD> <TD><input id="11" type="radio" name="valor03" value="3" onClick="calcula('N','valor03-3','valor04-1','valor05-2')"></TD> <TD><input id="12" type="radio" name="valor03" value="3" onClick="calcula('A','valor03-3','valor04-1','valor05-2')"></TD> </TR> <TR> <TD bgcolor='#66FFFF'><div id="lbValue_04"></TD> <TD><input id="13" type="radio" name="valor04" value="5" onClick="calcula()" checked></TD> <TD><input id="14" type="radio" name="valor04" value="5" onClick="calcula()"></TD> <TD><input id="15" type="radio" name="valor04" value="5" onClick="calcula()"></TD> </TR> <TR> <TD bgcolor='#66FFFF'><div id="lbValue_05"></TD> <TD><input id="16" type="radio" name="valor05" value="3" onClick="calcula()" checked></TD> <TD><input id="17" type="radio" name="valor05" value="3" onClick="calcula()"></TD> <TD><input id="18" type="radio" name="valor05" value="3" onClick="calcula()"></TD> </TR> <TR> <TD ><div id="lbValue_06"></TD> <TD><input id="19" type="radio" name="valor06" value="4" onClick="calcula()" checked></TD> <TD><input id="20" type="radio" name="valor06" value="4" onClick="calcula()"></TD> <TD><input id="21" type="radio" name="valor06" value="4" onClick="calcula()"></TD> </TR> <TR> <TD><div id="lbValue_07"></TD> <TD><input id="22" type="radio" name="valor07" value="6" onClick="calcula()" checked></TD> <TD><input id="23" type="radio" name="valor07" value="6" onClick="calcula()"></TD> <TD><input id="24" type="radio" name="valor07" value="6" onClick="calcula()"></TD> </TR> <TR> <TD><div id="lbValue_08"></TD> <TD><input id="25" type="radio" name="valor08" value="5" onClick="calcula()" checked></TD> <TD><input id="26" type="radio" name="valor08" value="5" onClick="calcula()"></TD> <TD><input id="27" type="radio" name="valor08" value="5" onClick="calcula()"></TD> </TR> <TR> <TD><div id="lbValue_09"></TD> <TD><input id="28" type="radio" name="valor09" value="8" onClick="calcula()" checked></TD> <TD><input id="29" type="radio" name="valor09" value="8" onClick="calcula()"></TD> <TD><input id="30" type="radio" name="valor09" value="8" onClick="calcula()"></TD> </TR> <TR> <TD><div id="lbValue_10"></TD> <TD><input id="31" type="radio" name="valor10" value="2" onClick="calcula()" checked></TD> <TD><input id="32" type="radio" name="valor10" value="2" onClick="calcula()"></TD> <TD><input id="33" type="radio" name="valor10" value="2" onClick="calcula()"></TD> </TR> </TABLE> <input id="tx" type="text" name="total" value="52"> </FORM> </BODY> </HTML> Editado Janeiro 11, 2010 por RICK OURO Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Janeiro 5, 2010 Denunciar Share Postado Janeiro 5, 2010 O que você quer fazer parece que é simples, mas ta dificil entender rsss. Tem algum exemplo de algum site? Explica melhor o que você precisa que aconteça Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 RICK OURO Postado Janeiro 6, 2010 Autor Denunciar Share Postado Janeiro 6, 2010 O que você quer fazer parece que é simples, mas ta dificil entender rsss. Tem algum exemplo de algum site? Explica melhor o que você precisa que aconteçaOlá Andreia, espero que possa me ajudar e desde já agradeço.Bom vamos lá.No codigo acima ele monta + ou - isso.Quando carrega o sim já vem tudo checked e Soma abaixo.valor sim não n/a------ ---- ---- ---- 7 (*) () () 2 (*) () () 6 (*) () () 3 (*) () () 5 (*) () ()--------------------[ 23 ] Total----------------------------------------------------------------------------------------------------------Quando selecionar o não tem que Subtrair o valor do total.valor sim não n/a------ ---- ---- ---- 7 () (*) () 2 (*) () () 6 (*) () () 3 (*) () () 5 (*) () ()--------------------[ 16 ] Total----------------------------------------------------------------------------------------------------------Quando selecionar o n/a tem que zerar o valor selecionado e Redistribuir o valor para outros predeterminados.valor sim não n/a------ ---- ---- ---- 0 () () (*) era 7 fica 0 2 (*) () () 8 (*) () () era 6 soma 2 8 (*) () () era 3 soma 5 5 (*) () ()--------------------[ 23] TotalO form ira ser montado dinamicamente pois os dados seram carregados aparti de uma base. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 RICK OURO Postado Janeiro 11, 2010 Autor Denunciar Share Postado Janeiro 11, 2010 (editado) Bom dia!!Galera, eu andei verificando e acho que uma solução para o meu problema seria cria um matriz multidimensional, alguém tem ideia de como resolver?Consegui montar em excel, VER :ninja: Como eu disse, estou aprendendo. Estou ficando sem tempo, para entrega do trabalho. Se alguém quiser aceitar o desafio estarei REMUNERANDO.gratoRick Ouro Editado Janeiro 11, 2010 por RICK OURO Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
RICK OURO
Olá galera, beleza?
Sou iniciante em javascript e me deparei com um baita problema, já faz faz 1 mese e não consegui resolver o problema.
ex: na primeira linha o valor 7 sera distribuido para a linha 2 e 3 e a linha 1 fica 0 (zero), isso quando clicar no radio (n/a)
quando clicar no radio (sim) teria que voltar o valor inicial.
quando clicar no radio (não) tem que subtrair o valor inicial do total abaixo.
Se alguém quiser fazer o código e vender, dependendo do valor eu compro.
grato
Editado por RICK OUROLink para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.