web-dev-qa-db-ja.com

jQueryで応答HTMLデータを出力する方法AJAX request?

ショッピングカートのあるオンラインショップを持っています。カート、<table>、カートに記事を追加した後、コンテンツを更新します。

jQueryのAJAX HTMLを受け取るメソッドを使用します<td><tr>は、呼び出されたPHPスクリプトからの応答です。Firebugのコンソールには、呼び出しからの正しい応答が表示されます。

私のコードからわかるように、私はHTMLをテーブルに追加したいと思います。動作しません。 AJAXメソッドが理解できませんか?これらを追加したい<td><tr>をショッピングカートテーブルに追加します。

JavaScript(jQuery 1.9.1を使用)

$.ajax({
    url: 'php/addToShoppingCart.php',
    type: 'POST',
    dataType: 'html',
    data: content,

    complete: function(data) {  
        $('#shop section table tbody').append(data);
    },
});

Firebugコンソール

enter image description here

8
Tomkay

.done()を使用して試しましたか?

$.ajax({
  url: 'php/addToShoppingCart.php',
  type: 'POST',
  dataType: 'html',
  data: content,
}).done(function ( data ) {
  $('#shop section table tbody').append(data);
});
9
Stefan Candan

成功にも使えます

  $.ajax({
       url: 'php/addToShoppingCart.php',
       type: 'POST',
       dataType: 'html',
       data: content, 
       success : function(data) 
      {$('#shop section table tbody').append(data);}
      });
3
Devesh

completeの構文は次のとおりです

$.ajax({
url: 'php/addToShoppingCart.php',
type: 'POST',
dataType: 'html',
data: content,

}).complete(function (data) {
    $('#shop section table tbody').append(data);

});
0
Yogesh Suthar

カートの中にテーブルと1つのtrを作成して、上部にタイトルを表示できるようにします。

<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>

次に、このようにコンテンツを追加できます

function AddToCart(pid)
{
    $.post('php/addToShoppingCart.php',{pid:pid},function(data){    
       $('#cartprod tr:first').after(data); 
    },'html')
}
0
Mahendra