3

Intel XDK プロジェクトで codeigniter を使用してバックエンド データを処理しようとしています。

私はindex.htmlに次のフォームを持っています:

<form method="POST" class='ajax'>
    <input type="text" name="user" />
    <input type="password" name="password" />
    <input type="submit" value="send" /> 
</form>

js 関数を使用してコントローラーにアクセスしようとすると、ファイルが見つからないというステータスが表示されます。

$('form.ajax').on('submit', function(){
var that = $(this),
url = "../../controllers/welcome.php";
method = that.attr("method"),
data = {};

that.find("[name]").each(function(index, value){
    var that = $(this),
    name= that.attr("name");
    value = that.val();
    data[name] = value;
});

$.ajax({
    url:url,
    type:method,
    data:data,
    success: function(response){
        console.log(response);
    }
});

});

URLパスはファイルにつながりますが、それでもステータス404を表示します: localhost:58889/http-services/emulator-webserver/ripple/userapp//C/xampp/htdocs/my_project_folder/application/controllers/welcome.php

Web サイトのように、htaccess ファイルと config ファイルに何かを設定する必要がありますか?

もう1つ、私のXDKプロジェクトはアプリケーション内のビューフォルダーにあります

前もって感謝します

4

1 に答える 1

0

ajax 呼び出しで参照しているファイル (../../controllers/welcome.php) は、ブラウザーにページを提供している Web サーバーのコンテキストでのみ機能します。これは HTML5 ハイブリッド アプリのしくみではありません。「Web サーバー」はありません (エラー メッセージからは Web サーバーがあるように見えますが)。

Web サーバーに送信する必要がある場合、その Web サーバーの名前を指定する必要があります。HTML5 ハイブリッド アプリでは、アプリの index.html ページはデバイスに対して "ローカル" であり、Web サーバーによってネット経由で提供されていないため、そのドメインまたはコンテキストの一部ではありません。

私が言っていることが理にかなっていることを願っています...

于 2014-03-31T21:17:43.017 に答える