J'ai une boutique en ligne avec un panier d'achat. Le panier, qui est un <table>
, actualise son contenu après avoir ajouté un article au panier.
J'utilise la méthode AJAX de jQuery qui reçoit HTML <td><tr>
en réponse du script PHP appelé . La console de Firebug affiche le réponse correcte de l'appel.
Comme vous pouvez le voir dans mon code, je veux ajouter du HTML au tableau . Je n'arrive pas à le faire fonctionner ... Je ne comprends pas la méthode AJAX? Je souhaite ajouter ces <td><tr>
à la table des paniers d'achat.
$.ajax({
url: 'php/addToShoppingCart.php',
type: 'POST',
dataType: 'html',
data: content,
complete: function(data) {
$('#shop section table tbody').append(data);
},
});
ont essayé en utilisant .done ()?
$.ajax({
url: 'php/addToShoppingCart.php',
type: 'POST',
dataType: 'html',
data: content,
}).done(function ( data ) {
$('#shop section table tbody').append(data);
});
Vous pouvez utiliser le succès aussi
$.ajax({
url: 'php/addToShoppingCart.php',
type: 'POST',
dataType: 'html',
data: content,
success : function(data)
{$('#shop section table tbody').append(data);}
});
La syntaxe pour complete
est la suivante:
$.ajax({
url: 'php/addToShoppingCart.php',
type: 'POST',
dataType: 'html',
data: content,
}).complete(function (data) {
$('#shop section table tbody').append(data);
});
Bien à l’intérieur de votre panier, créez une table et un disque pour pouvoir afficher les titres en haut.
<table cellpadding="5" cellpadding="2" border="0" id="cartprod">
<tr>
<td width="60%"><b>Product Name</b></td>
<td width="20%"><b>Quantity</b></td>
<td width="20"><b>Price</b></td>
</tr>
</table>
Ensuite, vous pouvez ajouter votre contenu comme ceci
function AddToCart(pid)
{
$.post('php/addToShoppingCart.php',{pid:pid},function(data){
$('#cartprod tr:first').after(data);
},'html')
}