我有这个表格:
<form id="monForm" action="indexer.php" method="post">
<input name="url" id="url" value="" class="url"/>
<input type="submit" id="envoyer" value="Parser" class="submit" />
</form>
<p id="infos"></p>
还有这个 JavaScript:
<script>
$(document).ready(function(){
$('#monForm').submit(function() {
var url = $('#url').val();
$( "#result" ).empty();
// appel Ajax
$.ajax({
url: $(this).attr('action'), // le nom du fichier indiqué dans le formulaire
type: $(this).attr('method'), // la méthode indiquée dans le formulaire (get ou post)
data: $(this).serialize(), // je sérialise les données (voir plus loin), ici les $_POST
success: function(msg) { // je récupère la réponse du fichier PHP
$('#infos').append(msg+'%<br/>');
}
});
return false; // j'empêche le navigateur de soumettre lui-même le formulaire
});
});
我的indexer.php只是一段时间:
$i = 0;
while($i < 10){
echo $i."<br/>";
sleep(1);
$i++;
}
我不想在 1 次内返回数据 (0, 1, 2, 3, ...)。
我认为我需要使用 ob_flush 但我不知道该怎么做。
请问有什么想法吗?
最佳答案
希望这对您有帮助:
<?php
// start output buffer
if (ob_get_level() == 0) ob_start();
$i = 0;
while($i < 10){
echo $i."<br/>";
ob_flush();
flush();
sleep(1);
$i++;
}
?>
关于javascript - 表单ajax和ob_flush,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19357187/