2016-07-19 14 views
0

Seit einigen Wochen (zwei) begann mein Abenteuer mit Magento. Bisher habe ich ein wenig gelernt, habe aber ein Problem beim Senden von Daten mit Ajax (jQuery).Magento Ajax Request - Wie übergibt man Daten?

$(document).ready(function(){ 
     var total = $(this).find(\"input[class=tramp]:checked\").length; 
     $(\".caret input[type='checkbox']\").change(function(){ 
      if($(this).is(':checked')){ 
       var value= true; 
       }else{ 
        var value = false; 
       }    
      var brand = $(this).data('brand'); 

      data = {brand: brand, value: value} 
      $.ajax({ 
       data: data, 
       url: 'checkbox/ajax/index', 
       method: 'POST', 
       success: function(result){ 
        console.log(data, total); 
      }}); 
     }); 

});

Das ist mein Ajax, so wie Sie sehen können versuchen, Marke und Wert zu senden. AjaxController.php sieht wie folgt aus:

class Amber_Checkbox_AjaxController extends Mage_Core_Controller_Front_Action { 

public function indexAction() 
{ 
    $brand = Mage::app()->getRequest()->getPost('brand', 'value');// not sure or I should use data? 
    if($brand) 
    { 
     .... 
     $this->getResponse()->setBody($brand); 

     echo $brand; 
     ... 
    } 
} 

}

Antwort

0

entfernen \ "

$(document).ready(function(){ 
     var total = $(this).find("input[class=tramp]:checked").length; 
     $(".caret input[type='checkbox']").change(function(){ 
      if($(this).is(':checked')){ 
       var value= true; 
       }else{ 
        var value = false; 
       }    
      var brand = $(this).data('brand'); 

      data = {brand: brand, value: value} 
      $.ajax({ 
       data: data, 
       url: 'checkbox/ajax/index', 
       method: 'POST', 
       success: function(result){ 
        console.log(data, total); 
      }}); 
     }); 
}); 
+0

Hallo ahhmar, in diesem Fall wenn ich entferne "es funktioniert einfach nicht :) also muss ich fliehen" . Dieser Teil des Codes funktioniert einwandfrei, ich kann auf der AjaxController-Site nichts sehen. :( –

0

Entfernen \", $ mit jQuery ersetzen und übergeben absolute URL Mage::getUrl('checkbox/ajax/index');

$.ajax({ 
    data: data, 
    url: '<?php echo Mage::getUrl("checkbox/ajax/index"); ?>', 
    method: 'POST', 
    success: function(result){ 
    console.log(data, total); 
}}); 
+0

Da dieser Block eingefügt wird, während die Reihe der divs generiert wird, wird es nicht funktionieren, wenn es keine \ "(Backslash), ich werde versuchen;) –

+0

Okay, in diesem Fall \" erforderlich –

+0

Was ist der Unterschied betwieen $ und jQuery? Es ist wichtig ? –