0
我試圖從服務器上的某個目錄獲取圖像的數量。我使用PHP來計算圖像的數量,以及AJAX(在我的Chrome擴展中)從我的外部PHP文件中獲取圖像的數量。AJAX調用未在Chrome擴展中成功
這是要通過成功:函數{},但沒有運行的如果(數據){}。它也會偶爾提醒錯誤,並說出現以下錯誤:錯誤。我該如何解決?
main.js
...
(function ($) {
$(document).ready(function(e) {
$.ajax({
url: 'http://website.com/numberOfImages.php', // <== POINTS TO THE VALID URL OF THE PHP FILE THAT OUTPUTS THE NUMBER OF IMAGES...
dataType: "HTML",
cache: false,
type: "POST",
//HANDLE THE SUCCESS CASE FOR THE AJAX CALL
success: function (data, textStatus, jqXHR) {
if(data){
alert(data);
}
},
//HANDLE THE FAILURE CASE FOR THE AJAX CALL
error: function (jqXHR, textStatus, errorThrown) {
alert('The following error occurred: ' + textStatus, errorThrown);
},
//HANDLE THE EVENT-COMPLETE CASE FOR THE AJAX CALL
complete: function (jqXHR, textStatus) {
}
});
});
})(jQuery);
manifest.json的
{
"name": "some name",
"description": "Add description",
"version": "1.0",
"permissions": [
"activeTab"
],
"chrome_url_overrides" : {
"newtab": "main.html"
},
"background": {
"scripts": ["jquery-2.2.3.min.js", "background.js"],
"persistent": false
},
"permissions": [
"activeTab",
"https://ajax.googleapis.com/",
"storage",
"tabs",
"http://*/*",
"https://*/*"
],
"browser_action": {
"default_title": "some title"
},
"manifest_version": 2
}
numberOfImages.php
<?php
$dir = "/home/some/directory";
$fi = new FilesystemIterator($dir, FilesystemIterator::SKIP_DOTS);
$fileCount = iterator_count($fi);
die($fileCount);
?>
從[模/退出基準](http://php.net/manual/en/function.exit.php)__If狀態是一個整數,其值將是用作退出狀態而不是打印出來的。所以你的腳本不會打印任何東西,除非你沒有顯示其他的代碼。這意味着數據將是一個空字符串,這是錯誤的。不要將die用作打印命令,其用於狀態消息。只需'回顯數字並結束腳本 –
因此,我應該只是回顯整數,AJAX會將其提取出來? – Han
它的工作,謝謝@PatrickEvans! :-) – Han