2012-01-27 13 views
2

Phonegap for Windows PhoneとjQueryに問題があります。Phone Phone for Windows Phone jQuery ajaxコールバックが実行されない

私は離れたサーバーにAjaxリクエストを送信していますが、サーバーが200コードで応答しても成功コールバックは実行されません(サーバーaccess_logでリクエストを見ることができます)。エラーコールバックも実行されません。

コード

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

$.ajax({ 
    url: 'http://example.com', 
    data: { foo: 'bar' }, 
    cache: false, 
    dataType: 'json', 
    success: function (data) { 
     console.log(data); 
    } 
}); 

任意のアイデア?

答えて

0

電話ギャップ1.3.0のローカルXHRシム実装の既知の問題のようです。あなたは、以前のバージョンに切り替えるか、ライン3551からファイルの最後に開始PhoneGapの-1.3.0.jsのすべてをコメントすることができ

EDIT のPhoneGapの1.4.0rc1がコミットされ
//(function(win,doc){ 
// 
// doc.addEventListener("DOMContentLoaded",function() 
// { 
// ...... 
//  if(!docDomain || docDomain.length == 0) 
//  { 
//   //console.log("adding our own Local XHR shim "); 
//   var aliasXHR = win.XMLHttpRequest; 
//  
//   win.XMLHttpRequest = function(){}; 
//  
//   var UNSENT = 0; 
// ...... 
// 
//  
//})(window,document); 

https://github.com/purplecabbage/callback-windows-phone

変更には、ローカルファイルへのXHRの修正、jQMのシングル/マルチページアプリケーションが正しく機能するよう修正が加えられました。

+2

最新のPhoneGapは、このことができますが、私はそれが何かを破壊しないかはわからないので、ここで少しクリーナーソリューションです...のWindows Phone 7上で同じ問題を抱えているようだチェックします。http: //shareourideas.com/2012/03/04/phonegap-and-jquery-ajax-call-post-in-windows-phone/ –

+1

@ ZathrusWriterありがとう、ありがとうございます+100 – user1053263

1

私は同じ問題を抱えていますが、このアドバイスはありません。新しいバージョンのphonegapも役に立ちませんでした。 phonegap 1.4.0ではエラーコールバックを常に取得します。

+0

私は同じ問題を発見しています1.4.1 – benpage

1

あなたはjQueryのモバイルを使用している場合は、trueに次のように設定する必要があります。

$ .support.corsと$ .mobile.allowCrossDomainPages

jQueryの中で実行されるすべてのJSコードを期待クロスドメイン要求が許可されていない通常のブラウザ環境です。私は彼らがPhoneGapのためにこれを思いついたと思う。

jQuery Mobile Docs

関連する問題