Приложение PhoneGap работает на эмуляторе, а не на устройстве

Яm testing simple phonegap app for adding comment with remote server. iЯ проверил в Telerik icenium simulator и в браузере, и это работает. Но когда я пытаюсь протестировать в эмуляторе Visual Studio и нажимаю кнопку, появляется сообщение "CordovaBrowser_NavigationFailed:: www/index.html?email=fgg@vv.com&comment=Gjjj". Я тоже тестировал на устройстве, но там ничего не происходит.

Вот код index.html - главная страница

<!DOCTYPE html>
<html lang="en-US">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no;">

    <title>jQuery form post</title>

    <script src="cordova.js"></script>
    <script src="js/index.js"></script>
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
    <script src="js/post.js"></script>
    <script src="js/jquery.mobile-1.4.3.js"></script>
    <script>
        function onBodyLoad() {
            document.addEventListener("deviceready", onDeviceReady, false);
        }
    </script>

    <style>
        label, b {
            display: block;
        }
    </style>
</head>
<body onload="onBodyLoad()">
    //<a href="http://bgg.comxa.com/new.php">content</a>
    <div id="landmark-1" data-landmark-id="1">
        <form>
            <label for="email">
                <b>Email</b>
                <input type="email" id="email" name="email">
            </label>

            <label for="comment">
                <b>Comment</b>
                <textarea id="comment" name="comment" cols="30" rows="10"></textarea>
            </label>

            <input type="submit" value="Save">
        </form>
    </div>
</body>
</html>

post.js

$(document).bind('deviceready', function () {
    $.support.cors = true;
    $.mobile.allowCrossDomainPages = true;
    $.mobile.pushStateEnabled = false;
    $(function () {
        $('form').submit(function () {
            var landmarkID = $(this).parent().attr('data-landmark-id');
            var postData = $(this).serialize();

            $.ajax({
                type: 'POST',
                data: postData + '&lid=' + landmarkID,
                //change the url for your project
                url: "http://bgg.comxa.com/new.php",
                crossDomain: true,
                success: function (data) {
                    console.log(data);
                    alert('Your comment was successfully added');
                },
                error: function () {
                    console.log(data);
                    alert('There was an error adding your comment');
                }
            });

            return false;
        });
    });
 }); 

2 ответа

После долгих чтений, я думаю, что проблема в prowsers Webki t. Я читал, что есть проблемы с ajax-запросами в браузерах на основе webkit. Я попробую код на реальном мобильном телефоне и увижу...

Как я понимаю, это сообщение об ошибке не говорит о том, что с файлом index.html что-то не так, похоже, оно вообще не может его найти.

Проверьте эту ветку: навигация в приложении phonegap не работает, когда я использую переменные GET

Там может быть что-то о том, как вы пытаетесь получить доступ к файлу index.html. Возможно, вы идете прямо к "index.html", а не к "www / index.html", как говорится в ответе на пост.

Надеюсь это поможет!

Другие вопросы по тегам