我有一个Ajax脚本,允许我在不刷新页面的情况下检查表单。但我希望它能检查字段是否完整,但如果字段完整,我想将用户发送到新页面。使用Javascript/Ajax加载新页面
我不知道我该如何做到这一点。下面是Ajax的脚本:
function pass()
{
// Real Browsers (chrome)
if (window.XMLHttpRequest)
{
xhr = new XMLHttpRequest();
}
// IE
else if (window.ActiveXObject)
{
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
//Store data
var email = document.getElementById('email').value;
var firstname = document.getElementById('firstname').value;
var surname = document.getElementById('surname').value;
var address1 = document.getElementById('address1').value;
var address2 = document.getElementById('address2').value;
var postcode = document.getElementById('postcode').value;
//Open POST location
xhr.open("POST","addUserSeminar.php");
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
//Make object to store all data
var obj = {email: email, firstname: firstname, surname: surname, address1: address1, address2: address2, postcode: postcode};
//Encode the data with JSON and send it to the server
xhr.send("data=" + JSON.stringify(obj));
//Check return state and change "myDiv"
xhr.onreadystatechange=function()
{
if (xhr.readyState==4)
{
document.getElementById("settingsDiv").innerHTML = xhr.responseText;
}
}
//Return false so form doesn't submit
return false;
}
它发送数据到一个PHP文件,其中我检查框被填满,如果“未找到名称”像不是我的每一个消息。但是,如果所有数据都发布了,那么我会向我的数据库添加一条记录,然后返回true。
我怎样才能在我的Ajax脚本中获取该返回值,以便我可以测试它的真实性,如果是这样,则转发到新页面。
谢谢你的时间。
尝试使用'location.href = “新位置的URL” ' – 2012-03-12 15:08:09
请保护你自己的灵魂,如果它不是绝对必要的,请不要自己创建XMLHttpRequest。使用[jQuery.ajax](http://api.jquery.com/jQuery.ajax/)或类似的东西... – Marc 2012-03-12 15:08:49