【发布时间】:2019-11-28 08:57:57
【问题描述】:
在这段代码中,我使用razorpay支付网关API,支付成功但无法在成功调用ajax后重定向。那么,如何在订单页面中使用window.location.href 重定向页面?请帮帮我。
$(document).ready(function() {
$('#buy_now').click(function(e) {
var total_amount = $(".total_amount").val();
var product_id = $(".product_id").map(function() {
return this.id;
}).get().join(",");
var new_uid = $("#new_uid").val();
var user_id = $("#uid").val();
var user_email = $(".user_email").attr("id");
var options = {
"key": "************************",
"amount": (1 * 100), // 2000 paise = INR 20
"name": "MyApp",
"description": "Payment",
"image": "https://www.MyApp.com/img/logo/logo.png",
"handler": function(response) {
$.ajax({
url: '<?php echo base_url() ?>razorPaySuccess',
type: 'post',
dataType: 'json',
data: {
"razorpay_payment_id": response.razorpay_payment_id,
"total_amount": total_amount,
"product_id": product_id,
"new_uid": new_uid,
"user_email": user_email,
"user_id": user_id
},
success: function(data) {
window.location.href = "<?php echo base_url(); ?>order";
}
});
},
"theme": {
"color": "#528FF0"
}
};
var rzp1 = new Razorpay(options);
rzp1.open();
e.preventDefault();
});
});
【问题讨论】:
-
执行重定向的行看起来很好,这可能意味着 AJAX 请求不起作用,您需要调试它,而不是重定向。
-
我建议将
failed()添加到您的 ajax 请求中,甚至添加到error中,看看它为什么从 api 失败。在此处阅读有关 jquery ajax 的更多信息api.jquery.com/jquery.ajax
标签: javascript php jquery codeigniter razorpay