2013-02-11 5 views
0

Je clique sur le bouton, mais le paramètre ne passe pas à ma vue. Le bouton fonctionne correctement, je viens de le mettre sur le message d'alerte Le message d'alerte sera affiché. Mon point de vue comme follwsBouton cliquez sur le paramètre ne passe pas au contrôleur

 <script src="../../Scripts/jquery-1.7.1.js" type="text/javascript"></script> 
     <script src="../../Scripts/jquery-1.7.1.min.js" type="text/javascript"></script> 
     <script src="../../Scripts/jquery-ui-1.8.20.js" type="text/javascript"></script> 
     <script src="../../Scripts/jquery-ui-1.8.20.min.js" type="text/javascript"/>    
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script> 
     <script type="text/javascript"> 
      $(document).ready(function() { 
        $('#AddToCard').click(function() { 
        var ProductID = $('#txtproductID').val(); 
        var Quantity = $('#txtQuantity').val(); 
        var NetAmt = $('#txtNetAmt').val(); 
        var ProName = $('#txtPN').val(); 
        alert("ID="+ProductID+"QTY=" + Quantity+"NETAMT=" + NetAmt+"Name=" + ProName); 
        $.ajax({ 
         type: "POST", 
         url: '../Home/AddOrderItem', 
         data: { productCode: ProductID, quantity: Quantity, NAMT: NetAmt, PName: ProName }, 

         success: function (data) { 
          if (data) { 
     //      alert("Added To your Card"); 
          } 
         } 
        }); 
       }); 


      }); 
     </script> 

Mon cotroller est

 public void AddOrderItem(Int64 productCode, int quantity, decimal NAMT, string PName) 
      { 
       //adds an item to the current order 
       OrderDO order = (OrderDO)Session["Order"]; 
       decimal TotAmt = quantity * NAMT; 
       order.Items.Add(new OrderItem(productCode, quantity,NAMT,PName,TotAmt)); 
       Session["Order"] = order; 
       } 
+1

Vous ne renvoyez rien de AddOrderItem, comment peut-on appeler le succès? Quel est le paramètre que vous voulez transmettre? –

+0

Je suis appliquer le code ci-dessous, après que la fonction ajax n'a pas pu fonctionner public ActionResult AddOrderItem (Int64 productCode, quantité int, NAMT décimal, chaîne PName) { // ajoute un article à la commande en cours OrderDO order = (OrderDO) Session ["Commande"]; décimal TotAmt = quantité * NAMT; order.Items.Add (nouvel OrderItem (productCode, quantité, NAMT, PName, TotAmt)); Session ["Order"] = commande; return Json (order, JsonRequestBehavior.AllowGet); } – Raja

Répondre

0

Pour revenir résultat du contrôleur pour voir, vous devez retourner l'objet JSON.

public ActionResult AddOrderItem(Int64 productCode, int quantity, decimal NAMT, string PName) 
{ 
    //adds an item to the current order 
    OrderDO order = (OrderDO)Session["Order"]; 
    decimal TotAmt = quantity * NAMT; 
    order.Items.Add(new OrderItem(productCode, quantity,NAMT,PName,TotAmt)); 
    Session["Order"] = order; 

    return Json(order, JsonRequestBehavior.AllowGet); 
} 
+0

Dans le code ci-dessus ne fonctionne pas. En Ajax ne pouvait pas travailler. – Raja

Questions connexes