Tôi có biểu mẫu mà tôi đang cố gắng gửi sau khi tải trang và 5 giây đã trôi qua .. tôi đã thử setTimeout nhưng có vẻ như không hoạt động .. bất kỳ ai cũng có thể đề xuất lý do tại sao là trường hợp, tôi sẽ sử dụng jQuery trên trang web nhưng couldnt nhận chậm trễ() ngày làm việc hoặcTự động gửi biểu mẫu sau 5 giây
<form action="" name="cartCheckout" id="cartCheckout" method="post">
<input type="hidden" name="action" value="checkout" />
<input type="hidden" name="save" value="1" />
<input type="hidden" name="orderID" value="<?php echo $GLOBALS['CHECKOUT_ORDERID']; ?>" />
<div class="itembox" id="step4box">
<div id="progress">
<ul>
<li>Your Cart</li>
<li>Your Details</li>
<li class="current">Payment</li>
<li>Confirmation</li>
</ul>
</div>
<div id="words" class="gothbold">Please wait while we we redirect you to<br />Paypal for a secure payment method.</div>
<a class="redirect" href="javascript:void(0)" title="Proceed to Paypal" onClick="document.cartCheckout.submit();"><span>If you aren't redirected in 5 seconds click here</span></a><br />
<a class="cancel" href="javascript:void(0)" title="Return to details" onClick="jQuery('#step4box').hide();jQuery('#step2box').show();"><span>Cancel</span></a>
</div>
<script type="text/javascript">
window.onload=function(){
window.setTimeout(document.cartCheckout.submit(), 5000);
};
</script>
</form>
bất kỳ trợ giúp sẽ được đánh giá rất nhiều, cảm ơn trước
EDIT:
đổi này thông qua một sự kết hợp của @Alex, @ user824294 và câu hỏi này: How Can I create A 5 second Countdown timer with jquery that ends with a login popup?. Bây giờ làm việc tuyệt vời và với chức năng tuyệt vời của đếm ngược. Cảm ơn các bạn!
window.onload=function(){
var counter = 5;
var interval = setInterval(function() {
counter--;
$("#seconds").text(counter);
if (counter == 0) {
redirect();
clearInterval(interval);
}
}, 1000);
};
function redirect() {
document.checkout_paypal.submit();
}
này không hoạt động! Hàm submit submit được gọi sai 'this'. http://jsfiddle.net/C8FcX/ Kết quả đầu ra của Chrome: 'Lệnh gọi bất hợp pháp'. Bạn cần phải bọc nó với một 'hàm() {...}' để đảm bảo rằng việc gửi được gọi với ngữ cảnh chính xác, hoặc bạn có thể sử dụng 'Function.bind' –
@JuanMendes: Tôi nghĩ rằng đó có thể là trường hợp. – alex