2016-01-19 297 views
1

嗨,所以我有一個JS文件與我的按鈕功能,此按鈕從不同的複選框在表中獲取值。但現在我想在另一個頁面上獲得這些價值(用於發票處理)。jQuery使用ajax和json切換頁面按鈕

這裏是我的腳本:

$("#boutonfacturer").click(function() { 

var checked = $('input[name="id_commande[]"]:checked'); 
var tab = []; 
var jsonobj = {}; 
checked.each(function() { 
    var value = $(this).val(); 
    jsonobj.value = value; 
    tab.push(jsonobj); 
}); 
     var data= { recup : tab }; 
     console.log(data); 

     $.ajax({ 
       type: 'POST', 
       url: 'genererfacture-facture_groupee.html', 
       data: data, 
       success: function (msg) { 
       if (msg.error === 'OK') { 
        console.log('SUCCESS'); 
       } 
       else { 
        console.log('ERROR' + msg.error); 
       } 
     } 

      }).done(function(msg) { 
       console.log("Data Saved: " + msg); 
      }); 

}); 

我使用MVC架構,使有我的控制器:

public function facture_groupee() { 

    $_POST['recup']; 
    var_dump($_POST['recup']); 
    console.log(recup); 

    $this->getBody()->setTitre("Facture de votre commande"); 
    $this->getBody()->setContenu(Container::loader()); 
    $this->getBody()->setContenu(GenererFacture::facture_groupee()); 

和現在我的看法是無用的展示。 我可能在我的代碼中犯了錯誤。

謝謝。

回答

0

沒關係思前想後,我用我的ajax.php頁這讓我的另一頁多虧了window.location的:

我的JS:

$("#boutonfacturer").click(function() { 

var checked = $('input[name="id_commande[]"]:checked'); 
var tab = []; 
checked.each(function() { 
    var value = $(this).val(); 
    tab.push(value); 
}); 
var data = {recup: tab}; 
console.log(data); 

$.ajax({ 
    type: 'POST', 
    url: 'ajax.php?action=facture_groupee', 
    data: data, 
    success: function (idfac) { 
     console.log("Data Saved: " + idfac); 
     var id_fac = idfac; 
     window.location = "ajax.php?action=facture_groupee=" + id_fac; 
    } 

}); 

});

我的PHP:

public function facture_groupee() { 

    foreach ($_POST['recup'] as $p){ 
     echo $p; }