foreach($_POST as $key=>$value){
echo "$key $value<br>";
}
来自上面的源:
key1 value1
key2 value2
key3 value3
...
key**n** value**n**
因为php是服务器端脚本。结果同时显示 我的目标是显示每一行一次执行一行 我的想法是使用ajax来执行。
foreach($_POST as $key=>$value){
echo"
<script>
$.ajax({
url: "save.php",
type: "POST",
data: "key="+$key,"value="+$value,
dataType: "text",
success: function(data){
if (data==1){
$("#result").append("<div><?=$key." and ".$value?> has been saved</div>");
}
}
});
</script>
}
使用上述想法的最佳做法是什么?我必须把ajax foreach项目或只是一次调用吗?
答案 0 :(得分:0)
它更好地将所有查询ajax存储在一个数组ob对象中并在结束时调用它:
echo "
<script>
var _ajax = [];";
foreach($_POST as $key=>$value){
echo"
_ajax.push({
data: "key="+$key,"value="+$value
});
";
}
echo "
for(var i=0;i<_ajax.length;i++) {
makeCall(_ajax[i]);
}
function makeCall(value){.
$.ajax({
url: "save.php",
type: "POST",
data: value,
dataType: "text",
success: function(data){
if (data==1){
$("#result").append("<div><?=$key." and ".$value?> has been saved</div>");
}
}
});
}
}
</script>";
如果您使用q库进行承诺,那么您将做一次或多次清理。 我在函数内更改了make ajax调用的代码。