ajax 呼び出しでアンカー href を投稿できるアクションを作成しようとしています。まず、アンカータグはバックエンドの設定で作成されるため、フォーム内などに配置できないため、機能しません。
ボタンのマークアップは次のとおりです。href は js で動的に追加されます。
<a class="js-add-to-cart button buying-options buy-button" data-products-in-cart="<?= $products_in_cart ?>">
Select a size
</a>
現在、アンカーを投稿するこのコードが機能しています。
jQuery(function(){
jQuery('a.buy-button').click(function(event) {
event.preventDefault();
jQuery.ajax({
url: jQuery(this).attr('href'),
type: 'POST',
async: true,
beforeSend: function(){
jQuery('#result').hide();
jQuery('#ajax-loader').show();
},
error: function(xhr, status, thrown){
alert(xhr + ',' + status+ ',' + thrown);
},
complete: function(){
jQuery('#ajax-loader').hide();
},
success: function(data) {
jQuery('#result').empty().append(data);
jQuery('#result').fadeIn('slow');
}
});
});
});
それは機能しますが、私の唯一の問題は、基本的に get リクエストを実行し、ヘッダーのネットワーク応答でこれを取得することです:
これは、カートに追加する URL を投稿せず、製品をカートに追加します。
これを行う方法を知っている人はいますか?
乾杯、マーク