我正在處理一些現有的代碼。我有以下代碼:
$.ajax({
type: "get",
url: url ,
dataType: "jsonp",
cache: "false",
jsonpCallback: "onJSONPLoad",
success: function(json){
alert('hi!');
//perform operation
},
error: function() {
alert('Error occurs!');
}
});
現在,當我路過有效url
它工作正常。但是當我通過無效url
它應該通過錯誤警報。但腳本不會引發任何錯誤警報。基本上我想驗證url
參數或它失敗?請幫我找出我的代碼中的錯誤或建議我以其他方式實現。我已經檢查了以下鏈接,但沒能解決我的問題:
jQuery Ajax error handling, show custom exception messages
jQuery ajax error function, Ajax Success and Error function failure
UPDATE: 我有下面的代碼添加到登錄jQuery的控制檯日誌。
@Override
public boolean onConsoleMessage(ConsoleMessage cm) {
Log.d("web chrome client", cm.message() + " -- From line "
+ cm.lineNumber() + " of "
+ cm.sourceId());
return true;
}
確定了以下錯誤: XMLHttpRequest cannot load file:///android_asset/xxxx/new_source.json?callback=onJSONPLoad. Origin null is not allowed by Access-Control-Allow-Origin. -- From line 1 of null
加入以下代碼,應用程序運行成功。
if (Build.VERSION.SDK_INT >= VERSION_CODES.JELLY_BEAN) {
webView.getSettings().setAllowUniversalAccessFromFileURLs(true);
}
所以,基本上這是因爲url不能被jquery訪問。
感謝每一個幫助我的身體。
獲得從控制檯粘貼錯誤.. –
你的答案就在這裏: [首頁] [1] 這裏: [二] [2] [1]:http://stackoverflow.com/questions/377644/jquery-ajax-error-handling-show-custom-exception-messages [2]:http://stackoverflow.com/questions/3642348/jquery-ajax-error-callback – AminAmiriDarban
看看我的答案。 –