ola pessoal
estou tentando fazer uma soma de um tabela dinamica e mostra o resultado dentro de um outro input
estou com seguinte codigo
html que chama a funcao e que e gerado automaticamente
script que executa
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
function calcula(){
var x = 0;
$('.soma').each(function(i){
valor = parseInt($(this).val()) + x ;
$('#valor').val();
});
}
</script>
o input que recebe a soma que esta em tabela diferente
<input name="subtotal" type="text" class="effect" id="valor" value="" style="color:#F00;" size="15" maxlength="10" />
problema
não funciona :x
poderia me da uma dica o que fazer como fazer :?:
Seu código está errado.
Tente assim:
function calcula(){
var soma = 0;
$('.soma').each(function(i){
var valor = parseInt($(this).val());
if ( !isNaN( valor ) ) {
soma += valor;
}
});
$('#valor').val(soma);
}
Live example: http://jsfiddle.net/davidbuzatto/GkWZf/
Em relação à função parseInt:
Leia aqui: https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/parseInt
E aqui: http://www.diveintojavascript.com/core-javascript-reference/the-parseint-function
[quote=junaooaks]ola pessoal
estou tentando fazer uma soma de um tabela dinamica e mostra o resultado dentro de um outro input
estou com seguinte codigo
html que chama a funcao e que e gerado automaticamente
script que executa
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
function calcula(){
var x = 0;
$('.soma').each(function(i){
valor = parseInt($(this).val()) + x ;
$('#valor').val();
});
}
</script>
o input que recebe a soma que esta em tabela diferente
<input name="subtotal" type="text" class="effect" id="valor" value="" style="color:#F00;" size="15" maxlength="10" />
problema
não funciona :x
poderia me da uma dica o que fazer como fazer :?:
[/quote]
Brother usando uma lógica perto do que você está pensando ficaria assim:
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
function calcula(){
var x = 0;
$('.soma').each(function(indice, valor){ //na função each 'valor' seria o conteúdo atual doq está acessando, isso é próprio da função, ela já te dá essa opção de parâmetro
x += parseInt(valor); //aqui ele vai pegar o valor que está na posição atual, do índice que está acessando.
});
$('#valor').text(x); // ou val();
}
</script>
Cara não testei pra ser sincero hehehe… mais acho que assim funciona!
Abraço!