0

これは基本的な構文エラーであると確信していますが、jQuery mobile ajax(以下のコード)を使用してREST呼び出しを行おうとしていますが、ajaxがトリガーされていないことがわかります。

        function triggerCall() {
            alert("function triggered");
            $.ajax({
                type: "GET",
                dataType: "jsonp",
                url: REST Url,
                success: function (data) {
                    alert(data);
                }
            });

どんな助けでもいただければ幸いです

4

3 に答える 3

0

JSONPを使用している場合は、$。ajaxリクエストでコールバックを指定してから、RESTファイルの戻り値でコールバックを指定する必要があると思います。これは私が成功裏に使用してきたものの例です(しかし、それは完璧ではありません、私は確信しています)。

$.ajax({
    url: 'www.domain.com/string/to/your/REST/api',
    data: {
        dataToBeSent: variable, 
        dataToBeSent: sessionStorage.getItem('local/session Storage'),
        dataToBeSend: "or a string"
    },
    dataType: 'jsonp',
    jsonp: 'jsoncallback',
    timeout: 5000,
    success: function(data){    
        alert("Huzzah!");
    },
    error: function(){
        alert("Boohisssss");
    }
}); //end ajax call

そして、URLで、このコードをファイルの最後に配置します。

header("Content-type: application/json", true);
echo $_GET['jsoncallback'] . '(' . json_encode($data) . ');';
exit;

データは、PHPでjson_encode()を使用してJSONでエンコードされ、コールバック関数($ _GET ['jsoncallback'])でラップされた配列です。

私が言ったように、それは完璧ではありませんが、それは私のために働いています。

于 2012-11-02T20:08:49.963 に答える
0

実際に書いている場合はurl: REST Url,、変数または文字列に変更する必要があります..それは問題になります

于 2012-04-20T22:51:40.663 に答える
0
  1. ブラウザ コンソールでエラーを確認します。例えば。Chromeメニュー>ツール> JavaScriptコンソール。
  2. また、ajax 呼び出しにエラー ハンドラを追加することをお勧めします: http://api.jquery.com/error/
  3. 安らかな ajax 呼び出しに使用するメソッド (JSONP または CORS) を決定します。では、JSONP または CORS? .
于 2012-11-03T01:26:44.493 に答える