2016-05-27 10 views
0

私はphonegapを使用してハイブリッドアプリを構築しています。私はログインページを設計しています。私はWebサービスにアクセスできましたが、詳細を取得することはできませんでした。Phonegap xmlhttprequestがxmlデータを返さない

以下は、HTTPリクエストを送信するloginpageのスクリプトです。私は「警告を与えるとき(私のスクリプトで

<UserDetails xmlns:xsd="http://www.w3.org/2001/XMLSchema" 

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://meritmerge.com/"> 
<UserID>357</UserID> 
<IsAdmin>true</IsAdmin> 
<ResponseCode>1</ResponseCode> 
<SchoolID>20</SchoolID> 
<RoleID>37</RoleID> 
<ImageUrl>http://www.meritmerge.com/ClientsLogo/20.png</ImageUrl> 
</UserDetails> 

、succeess一部の下で:

<script> 
    $(document).ready(function() { 
     $("#btnLogin").click(function() { 
      $.ajax({  
       url: "http://developer.meritmerge.com/mmapk/mmservice.asmx/MMLogin", 
       type: "GET", 
       dataType: "html", 
       data: { MailID:$("#username").val(),PWD:$("#password").val()}, 
       success: function(data) 
       { 
        alert("yes"); 
       }, 
       error: function(err) 
       { 
        alert("Oops! Something went wrong!"); 
       } 
      }) 
     }); 
    }); 
</script> 

は、私が直接URLを使用して、ユーザー名とパスワードを渡す私のブラウザでこれを実行したときに私が手に出力され"はい");"はいと警告しますが、実際のデータ、つまりUserID、RoleIDを取得しようとすると、空のデータが表示されます。

私のデータタイプは正しいですか?私はdataTypeをテキストとして使用したとき、同じ反応を示しました。

私を助けてください。前もって感謝します。

+0

コードの主要部分を投稿していない、成功コールバックでデータを取得しているコードを使用しています。 – Gandhi

+0

解決済み! オブジェクトを返していて、そのオブジェクトのtext()にアクセスしなければなりませんでした。 –

+0

前述のように、応答解析が問題でした – Gandhi

答えて

1

解決済み!それはオブジェクトを返すだけで、そのテキスト()にアクセスしなければなりませんでした。

<script> 
     $(document).ready(function() { 
      $("#btnLogin").click(function() { 
       $.ajax({  
        url: "http://developer.meritmerge.com/mmapk/mmservice.asmx/MMLogin", 
        type: "GET", 
        dataType: "text", 
        data: { MailID:$("#username").val(),PWD:$("#password").val()}, 
        success: function(data) 
        { 
         $response = $(data).find("ResponseCode").text(); 
         if($response == 1) 
          { 
           localStorage["userid"] = $(data).find("UserID").text(); 
           localStorage["isadmin"] = $(data).find("IsAdmin").text(); 
           localStorage["schoolid"] = $(data).find("SchoolID").text(); 
           localStorage["schoolname"] = $(data).find("SchoolName").text(); 
           localStorage["username"] = $(data).find("UserName").text(); 
           localStorage["roleid"] = $(data).find("RoleID").text(); 
           localStorage["mailid"] = $(data).find("MailID").text(); 
           localStorage["imageurl"] = $(data).find("ImageUrl").text(); 
           localStorage["schoolid"] = $(data).find("StudentID").text(); 
           alert("Welcome, "+localStorage["schoolname"]); 
           window.location.href = "dashboard.html"; 
          } 
         else if($response == -999) 
          { 
           alert("Incorrect Credentials!"); 
           $('input[type="text"]#username').val(''); 
           $('input[type="password"]#password').val(''); 
           $('input[type="text"]#username').focus(); 
          } 
        }, 
        error: function(err) 
        { 
         alert("Oops! Something went wrong!"); 
        } 
       }) 
      }); 
     }); 
    </script> 

これはデータを取得するために使用したコードです。

しかし、今はブラウザ上で動作しますが、アンドロイドの携帯電話では、常に誤った部分に行き、「おっと!何かが間違っています!」と警告します。何が起こっているのか分かりません!!!!

+0

CORS for AJAXリクエストとホワイトリストプラグインが有効になっていますか? – Gandhi

関連する問題