当我尝试:
$.post("http://mysite.com/myscript.php",{ email:$('#emailRegister').val(),password:$('#passwordRegister').val()} ,function(data){
if(data=='yes')
{
alert("yes", data);
}
else
{
alert("not yes", data);
}
});
我得到:“不是是的”,实际应该是“是的”。我的php部分将用户添加到数据库,并在添加用户时返回“是”(工作正常)。
在我的脚本的另一部分,我使用相同的技术,但它工作得很好。
有人知道可能出现什么问题吗?如果有必要,这里有更多的代码(我正在使用PhoneGap开发一个iOs应用程序):
$("#register_form").submit(function(){
if(isEmail($("#emailRegister").val())){
if($("#passwordRegister").val() == $("#repeatPassword").val()){
$.post("http://mysite.com/myscript.php",{ email:$('#emailRegister').val(),password:$('#passwordRegister').val()} ,function(data)
{
if(data=='yes')
{
alert("yesss ",data);
localStorage.setItem("email", $('#emailRegister').val()); //saves to the database, key/value
localStorage.setItem("password", $('#passwordRegister').val()); //saves to the database, key/value
$.mobile.changePage($("#checkPage"),{ transition: "flip"});
}
else
{
alert(data);
}
});
}
else{
alert("The passwords do not match!");
}
}
else
{
navigator.notification.alert('Please enter a valid emailadres. This adress will be used in several years to send your pictures',null,"Invalid email");
}
return false; //not to post the form physically
});
答案 0 :(得分:0)
如果警报实际上说“不是是”那么唯一的可能性是数据变量在警报中包含看似“是”的东西,但实际上与“是”略有不同(可能包含空格或换行符。)
而不是if (data=="yes")
尝试if (data.match(/yes/))
。