このチェックアウト ページ(アイテムを追加する必要があります) があります。これは、この jsFiddle に見られる JavaScript / jQuery を使用して、別の配送先住所のフィールドを表示/非表示にします。表示するときは、すべてのフィールドの値を に設定し、非表示にする''
ときは、フィールドの値を請求フォームのそれぞれのフィールドと同じに設定します。
フォームを送信すると、PayPal のログイン画面が表示されます (別の配送先住所を切り替えて送信せずにフォームに記入してみてください)。配送先住所を切り替えると、同じページに戻ります。
.val()
フォームを壊しているフィールドを変更していることを知るのに十分なデバッグを行いました。これらのビットをコメントアウトし、開発ツールで可視性を手動で切り替えるか、請求フォームに記入して配送を表示/非表示にしない (つまり、.val()
呼び出されない) と、すべて正常に機能します。
そのページを見て試してみると、paypal の画面が表示されれば成功です。それ以外の場合は、同じページに戻ってきます (フォームのアクションは同じページに対してですが、私はできます)。 'データを処理するものは何も見つかりません - 完全な php ページはここにあります - これはWPEC のショッピング カート ページの修正版です
関連する JavaScript (のほとんど) は次のとおりです。
$('#reveal-shipping').click(function(){
if ( $('.wpsc_checkout_table.table-2').is(':animated') ) return;
if( $('.wpsc_checkout_table.table-2').css('display') == 'none' ){
$('.wpsc_checkout_table.table-2').slideToggle();
$('.wpsc_checkout_table.table-2').find('input, select, textarea').val('');
document.getElementById('reveal-shipping').innerHTML = 'Ship to my billing address ←';
} else {
for ( i=0; i < fields.length; i++ ){
thisval = $(fields[i][0]).val();
$(fields[i][1]).val( thisval );
}
$('.wpsc_checkout_table.table-2').slideToggle();
document.getElementById('reveal-shipping').innerHTML = 'Ship to a different address →';
}
});
私は本当にこれに行き詰まっています!