jqueryとphpの組み合わせに少し問題があります。コードから始めましょう。
PHPコード:
if ($_POST["request"]==10)
progress();
function progress()
{
$files = getfiles();
$progress = 0;
$progressRate = 100/$files->number;
for ($i=0;$i<$files->number;$i++)
{
sendfile($files->location[$i]);
$progress+=$progressRate;
echo $progress;
}
}
コード出力: たとえば、files->number = 2 の場合、出力は 50 100 になります。
Jqueryコード:
jQuery.post("functions.php",{request:10},function(data){
alert(data);
});
問題:私が望むのは、最初に 50 を警告し、次に 100 を警告することです。つまり、最初のループが php で終了し、最初の進行状況の値をエコーするとき、jquery はそれを傍受できるはずですが、jquery はループ全体の後にデータを警告しますこれは、1 つのアラートで 50100 を取得することを意味します。jQuery でこれを処理できる方法はありますか? PHPを使用して、たとえば非表示のdivまたは属性のループ数を生成し、jQuery内でループを使用する他のソリューションがあることは知っていますが、本当に直接やりたいです。