Je ne suis pas très bon avec JS et pour une raison quelconque, quand j'essaie d'ajouter deux champs ensemble, il les joint plutôt que d'ajouter la somme ensemble .. c'est le code que j'essaie d'utiliser ..Problèmes simples d'ajout de JavaScript
function calculateTotal() {
var postageVal = document.getElementById('postage').value; //$68.50
var subtotalVal = document.getElementById('subtotal').value; //$378.00
var postage = postageVal.substr(1); //68.50
var subtotal = subtotalVal.substr(1); //378.00
var totalVal = postage+subtotal;
alert(postage);
alert(subtotal);
alert(totalVal);
};
Le totalVal est l'écho/alerte sur 68.50378.00 plutôt que de les additionner .. quelqu'un pourrait-il s'il vous plaît me dire où je suis allé mal? :(L'idée est de mettre à jour le champ de texte "total" avec totalVal, mais je ne l'ai pas encore obtenu!
La raison pour laquelle vous obtenez la chaîne est que le javascript traitera un ajout comme une concaténation de chaîne si l'un des arguments sont une chaîne. Lorsque vous récupérez une valeur à partir d'un élément, il s'agit toujours d'une chaîne, vous devez donc la convertir comme le suggère karim79. –
javascript fait exactement ce que vous lui dites de faire..add cordes ensemble, pour ajouter mathématiquement vous devez convertir en un nombre type – TStamper