私は自分のページのpaypal add to cartボタンを統合しようとしています。 paypalごとに追加するとフォームが正常に動作しているようです。しかし、ajaxを使用してフォームをシリアライズして送信すると、フォームに302エラーが表示され、Divに入力されることはありません。Paypal「カートに入れる」ページを離れることなく
技術的には、ページをリロードしたり、誰かが「カートに追加」ボタンをクリックしたときに新しいページをリダイレクトしたり開けたりすることを避けようとしています。これをAjaxで回避することができました。明らかに、リダイレクトは、リダイレクトされたページをポストしたりロードしたりすることができないため、その可能性を排除しますか?
すべてのポインタがあります。ここで
は私のコードです:
Javascriptを:
$(document).ready(function(){
$(".addToCart").click(function(){
var ev = arguments[0] || window.event,
origEl = ev.target || ev.srcElement;
var cartForm = origEl.name;
var formData = $(cartForm).serialize();
$.ajax({
type: "POST",
url: "https://www.paypal.com/cgi-bin/webscr",
cache: false,
data: formData,
success: onSuccess,
error: onError
});
return false;
});
});
HTML:
<a class="addToCart" cartNumber="#paypal<?PHP echo $counter; ?>">
<img name="#paypal<?PHP echo $counter; ?>" src="images/butNowButton.jpg" cartNumber="#paypal<?PHP echo $counter; ?>" border="0" style="text-decoration:none;" />
</a>
<form name="paypal<?PHP echo $counter; ?>" id="paypal<?PHP echo $counter; ?>" target="paypal" action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_cart">
<input type="hidden" name="business" value="removed for security">
<input type="hidden" name="lc" value="US">
<input type="hidden" name="item_name" value="<?PHP echo $itemName; ?>">
<input type="hidden" name="item_number" value="<?PHP echo $Row['id']; ?>">
<input type="hidden" name="amount" value="<?PHP echo $amount; ?>">
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="button_subtype" value="products">
<input type="hidden" name="no_note" value="0">
<input type="hidden" name="tax_rate" value="0.000">
<input type="hidden" name="shipping" value="0.00">
<input type="hidden" name="add" value="1">
<input type="hidden" name="bn" value="PP-hopCartBF:btn_cart_LG.gif:NonHostedGuest">
</form>
おかげで、
シルバータイガー
302(技術的にはエラーとは言えません)を取得する理由がわかりません。しかし、代わりに、https://minicart.paypal-labs.com/でPayPal Mini Cartを見てください。これはあなたのニーズに合っていますか? – Robert
それを信じていても...あなたが返信する前に見つけたので、私はそれを使用することができました。それはうまく動作:)私はPHPで複数の項目を追加する方法を見つける必要がありますが(今は複数の項目を選択し、それらのカートに追加します)....まだそれのために。 – Silvertiger