我有一张表单,提交后转到blah.php
。问题是,blah.php
从站点移到另一个域。 JQuery看到了这个并给出了302 Object Moved error
。所以我不得不使用JSON
和AJAX
来发送表单。评论详细信息在下面的Jquery代码中。
流程应该是单击按钮,检查服务器端,如果不是'ok'
响应,则在状态div中输出响应并停止该页面上的所有服务器端。如果'ok'
是响应,则表单将继续
快速模拟我的代码
<form id="ppform" method="post" action"blah.php">
<input id="someid" type="text" />
<button id="sendbutton">Send</button>
<div id="status"></div>
</form>
$(document).ready(function(){
$(document).on('click', '#sendbutton', function(){
$('#status').empty();
$.ajax({
type: "POST",
url: "blah.php",
data: reqBody,
dataType: "json",
success:function(data,textStatus){
// here I want the div to return data if the response isn't 'ok'
if(data!='ok'){
$('#status').append(data);
}else{
// response was 'ok' so empty div,
// show loading gif and submit the form
$('#status').empty().html('<div id="proc">Processing</div><img src="loading.gif" />');
if (data.redirect){
window.location.href = data.redirect;
} else {
$("#ppform").replaceWith(data.form);
}
}
}
});
});
});
答案 0 :(得分:0)
我认为,这是一个浏览器安全问题,您无法在不同的域上发送ajax请求。
答案 1 :(得分:0)