这是以前工作,我不记得改变任何东西。我有一个表单,它将信息发送到“处理”php文件,并且应该得到回应。相反,它只是“处理”php并在新页面上回显JSON数据。 jquery包括谷歌和表单页面和“进程”页面都在同一目录中。Ajax请求转到新页面而不是更新当前页面?
$data = array(
'status' => $status,
'message' => $errorMsg
);
echo json_encode($data);
if ($status == "success"){
session_destroy();
}
exit();
所以这是它在所有的处理结束(确保数据是好的,所有的这些工作得很好)。这是使用的JavaScript:
$(document).ready(function(){
$('#signupForm').submit(function(){
//various client side checks to keep form from submitting easy to see garbage
if($(this).data('formstatus') !== 'submitting'){
var responseMsg = $('#response');
responseMsg.hide()
.addClass('response-waiting')
.text('Signing Up...')
.fadeIn(200);
var dataString = //the data
$.ajax({
type: "POST",
url: "process.php",
data: dataString,
success: function(data) {
var responseData = jQuery.parseJSON(data),
messageClass = '';
switch(responseData.status){
case 'error':
messageClass = 'response-error';
break;
case 'success':
messageClass = 'response-success';
break;
}
responseMsg.fadeOut(200,function(){
$(this).removeClass('response-waiting')
.addClass(messageClass)
.text(responseData.message)
.fadeIn(200,function(){
setTimeout(function(){
responseMsg.fadeOut(200,function(){
$(this).removeClass(messageClass);
});
},5000);
});
});
}
});
}
return false;
});
})
如果有什么具体的东西我应该找,请让我知道,我会更新。就像我说的那样,我已经在工作(昨天),我不记得改变任何事情,除非在顶部拿出客户端支票,我知道这根本不重要。
我一直忘记检查Web控制台。它最终成为一个无关脚本中的错误,这就是为什么我没有看到它。 – townie 2012-02-27 02:27:55