簡體   English   中英

無法在PhoneGap中使用此AJAX呼叫

[英]Can't get this AJAX call working in PhoneGap

使用PhoneGap,我正在嘗試構建一個基本的Android應用程序,該應用程序對PHP API進行AJAX調用並返回一些JSON數據。 該代碼全部可以在桌面上運行,但是在構建時似乎不適用於我的Android。 生成應用程序時,將其安裝在設備上並加載它,然后出現黑屏。

這是我寫的客戶...這段代碼有什么問題嗎?

<head>
    <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
    <script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/jquerymobile/1.4.3/jquery.mobile.min.css" />
</head>

<body>
    <script>
        document.addEventListener("deviceready", onDeviceReady, false);

        function onDeviceReady() {
            // Now safe to use the PhoneGap API

            $.support.cors = true;
            $.mobile.allowCrossDomainPages = true;

            $.ajax({
                url: 'http://api.example.com/test.php',
                dataType: 'json',
                timeout: 5000,
                success: function(data, status) {
                    //data loaded
                    $('#results').append(data[0].about);
                },
                error: function() {
                    //error loading data
                    $('#results').append('No data received.');
                }
            });
            $(document).ajaxError(function(event, request, settings) {
                $("#msg").append("<li>Error requesting page " + settings.url + "</li>");
            });
            $(document).ajaxComplete(function(event, request, settings) {
                $("#msg").append("<li>Request Complete.</li>");
            });
        }
    </script>
    <p id="results"></p>
    <p id="msg"></p>
</body>

</html>

我還將config.xml中的訪問源設置為:

<access origin="http://example.com" subdomains="true" /> 
<access origin="*"/>

似乎沒有調用AJAX代碼(和全局AJAX事件處理程序)。

確保在正確的位置包含並提供了cordova.js(例如,通過alert(<some cordova property>); )。 然后嘗試完全調用onDeviceReady:

document.addEventListener("deviceready", function(){
      alert("deviceready");
 },false);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM