2009-11-11 7 views
0

J'ajoute une valeur de montant total à un DIV via un appel jQuery Ajax chaque fois que j'ajoute un nouvel élément à un panier. J'ai besoin de cette valeur pour faire partie d'un calcul de différence (payment-totalAmount), mais j'ai de la difficulté à obtenir la valeur totalAmount.Jquery: Obtenir la valeur de l'attribut dynamique

je régler le montant total dans la fonction appelée SetTotalAmount puis j'essaie d'obtenir la valeur de la balise DIV dans le submitPayment ActionEvent:

<script type="text/javascript"> 
$(document).ready(function(){ 

    $("#submitPayment").click(function(){ 
     var paymentAmount = $("#paymentAmount").val(); 
     var totalAmount = $("#totalTillAmount").val(); 
     var difference = (paymentAmount-totalAmount); 

     $("#paymentTillAmount").html("betalt: "+paymentAmount); 
     //$("#totalTillAmount").html("total: "+totalAmount); 

     $("#difference").html("Tilbage: "+difference); 

     $("#paymentInfo").show('slow'); 

    }); 

}); 


function SetTotalAmount() 
{ 
    $.post("Controller/TillController.php?action=3", 
      function(data) 
      { 
       $("#totalAmount").html(data); 
       $("#totalTillAmount").html(data); 
      } 
    ); 
} 
</script> 

Répondre

1

Vous devrez peut-être analyser des chaînes avant d'effectuer les calculs:

var paymentAmount = parseFloat($("#paymentAmount").text()); 
var totalAmount = parseFloat($("#totalTillAmount").text()); 

également que #totalTillAmount est un div vous devrez peut-être utiliser la fonction text au lieu de val (qui est utilisé pour input éléments) pour lire son contenu.

Questions connexes