这是我的代码:
var myVariable = "<div>";
for (i = 1; i < 5; ++i) {
myVariable += '<div class="user' + i + '">';
$.ajax({
type: "POST",
data: "uziv=" + i,
url: "../php/ajax_objednavky.php",
success: function(data){
//alert(data); work well
//$('#content').html(data); work well
myVariable += data; //doesn't work
}
});
myVariable += '</div>';
}
myVariable += "</div>";
$('#myDiv').html(myVariable);
PHP文件看起来像
<? echo "data from mysql"; ?>
我可以使用alert查看数据,但如何将数据添加到变量?
答案 0 :(得分:0)
编辑。
可能是因为ajax请求花了一些时间来芬兰语。当第一个结果返回时,JS已经完成了。
这段代码可能会有所改进,但我希望你明白我的意思。
var myVariable = "<div>";
for (i = 1; i < 5; ++i) {
myVariable += '<div class="user' + i + '">';
$.ajax({
type: "POST",
data: "uziv=" + i,
url: "../php/ajax_objednavky.php",
success: function(data){
myVariable += data; //doesn't work
myVariable += '</div>';
if(i == 4){
myVariable += "</div>";
$('#myDiv').html(myVariable);
}
}
});
}
您可以将所有这些内容作为json发送到ajax-request上,而不是发送每个i
,并将所有结果返回到一个请求中。这需要对您的服务进行一些重建,但这可能是更好的方法。
答案 1 :(得分:0)
我对你的帖子感到惊讶:
data: "ter="+ objednavky + "&uziv=" + uzivatel,
我一直用 数据:{ter:objednavky,uziv:uzivatel}
更容易阅读,恕我直言。
那么,你的意思是“不工作吗?”
试试这个:
myVariable += data;
alert("foo");
你看到foo警报吗? (我希望你搞砸了“”并且在div上没有打印,但它“有效”)。例如:“”
答案 2 :(得分:-1)
我想这就是你需要的,因为不需要将数据与myVaraible连接起来。
<强>更新强>
原因是,ajax data
正在返回 object
。所以连接不是一个好的。所以我想你可能有data.something。以这种方式检查。
如果它是一个对象,那么连接输出将是
<div>[object Object]