jQuery somme sur le changement keyup() et la production dans la zone de Texte
J'ai le texte suivant jQuery code pour trouver la somme de toutes les lignes de la table, maintenant il trouve la somme sur keyup. Je veux que la somme déjà calculé. Je voulais avoir un champ caché comme une entrée avec une valeur, donc la somme est calculée automatiquement.
Maintenant, il y a une entrée, l'utilisateur écrit un certain nombre et qu'il obtient la somme, je suis en train d'essayer d'obtenir la somme automatiquement. c'est du travail mais j'ai besoin de la sortie d'impression dans la zone de texte.... pour que ce code
<table>
<tr>
<td width="40px">1</td>
<td>Number</td>
<td><input class="txt" type="text" name="txt" /></td>
</tr>
<tr>
<td>2</td>
<td>Number</td>
<td><input class="txt" type="text" name="txt" /></td>
</tr>
<tr>
<td>3</td>
<td>Number</td>
<td><input class="txt" type="text" name="txt" /></td>
</tr>
<tr id="summation">
<td colspan ="2" align="right">
Sum :
</td>
<td>
<span id="sum"><input class="txt" type="text" name="txt" />
</td>
</span>
</td>
</tr>
</table>
$(document).ready(function() {
//this calculates values automatically
calculateSum();
$(".txt").live("keydown keyup", function() {
calculateSum();
});
});
function calculateSum() {
var sum = 0;
//iterate through each textboxes and add the values
$(".txt").each(function() {
//add only if the value is number
if (!isNaN(this.value) && this.value.length != 0) {
sum += parseFloat(this.value);
$(this).css("background-color", "#FEFFB0");
}
else if (this.value.length != 0){
$(this).css("background-color", "red");
}
});
$("#sum").html(sum.toFixed(2));
}
OriginalL'auteur user3503395 | 2014-04-16
Vous devez vous connecter pour publier un commentaire.
Utilisation val() pour définir la valeur dans la zone de texte comme ceci:
Html:
Jquery:
Voici de travail Violon DÉMO
aucun changement nécessaire..
dans votre calculateSum fonction de la dernière ligne, remplacer cette ligne avec celui-ci, tout simplement
oui j'ai la dernière ligne de mon code mais c'est notwork...
<input type="text" id='input', name="input" /> j'ai utiliser cette zone de texte pour l'o/p
OriginalL'auteur Ehsan Sajjad
Vous pouvez utiliser .val() ici:
au lieu de:
OriginalL'auteur Felix