0

私が試すとき:

$.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
    });
4

1 に答える 1

0

アラートが実際に「はいはいではありません」と表示されている場合、唯一の可能性は、データ変数にアラートで「はい」のように見える何かが含まれているが、実際には「はい」とは微妙に異なることです (スペースまたは改行文字が含まれている可能性があります)。 .

if (data=="yes")試してみる代わりにif (data.match(/yes/))

于 2012-06-09T23:09:36.123 に答える