异步引起的问题。你应该在success函数最后把拼接好的html显示在div中,然后再显示。
做法:定义好一个带有表头的空表格,隐藏它,待加载完数据再显示即可。
<table id="t2" style="display:none">
<tr>表头</tr>
</table>
$ajax({
type: "POST",
url: "<%=path %>/two",
dataType: "json",
data:{'liDu':liDu,'startTime':startTime,'endTime':endTime},
success: function(returnedData){
var html = "";
var tdHead = "<td height='20'><div align='center'><span class='STYLE1'>";
var tdFoot = "</span></div></td>";
$("#t2 tr:gt(0)")remove();//每次刷新,但是不移除表头第一行。
for(var i=0;i<returnedDatalength;i++){
var countInfo = returnedData[i];
var totalCount = countInfototalCount;
var sucCount = countInfosucCount;
var failCount = countInfofailCount;
var unknowCount = countInfounknowCount;
var sucPercent = countInfosucPercent;
var failPercent = countInfofailPercent;
var unknowPercent = countInfounknowPercent;
var countTimeZone = countInfocountTimeZone;
html += "<tr>" + tdHead + (i + 1) + tdFoot +
tdHead + totalCount + tdFoot +
tdHead + sucCount + tdFoot +
tdHead + sucPercent + tdFoot +
tdHead + failCount + tdFoot +
tdHead + failPercent + tdFoot +
tdHead + unknowCount + tdFoot +
tdHead + unknowPercent + tdFoot +
tdHead + countTimeZone + tdFoot + "</tr>";
}
$("#t2")append(html);
$("#t2")show("slow");//我这是一个表格。
}
});
name是input标签的属性值,jQuery提供了attr() 方法用于设置/改变属性值
1
2
$("input:text")attr("name");
$("input:text")prop("name"); // 也可以使用prop()方法获取属性
示例代码如下
创建Html元素
1
2
3
4
5
6
7
<div class="box">
<span>点击按钮获取文本框的name属性值:</span>
<div class="content">
<input type="text" name="test" value="这个文本框的name属性值为test">
</div>
<input type="button" class="btn" value="获取文本框name值">
</div>
设置css样式
1
2
3
4
5
divbox{width:300px;height:250px;padding:10px 20px;margin:20px;border:4px dashed #ccc;}
divbox>span{color:#999;font-style:italic;}
divcontent{width:250px;height:100px;margin:10px 0;padding:5px 20px;border:2px solid #ff6666;}
input[type='text']{width:200px;height:30px;border:none;}
input[type='button']{width:120px;height:30px;margin:10px;border:2px solid #ebbcbe;}
编写jquery代码
1
2
3
4
5
$(function(){
$("input:button")click(function() {
alert($("input:text")attr("name"));
});
})
观察效果
$(function(){
var comments = $("#comments");
$getJSON("serverphp",function(json){
$each(json,function(index,array){
var txt = "<p><strong>"+array["user"]+"</strong>:"+array["comment"]+"<span>"
+array["addtime"]+"</span></p>";
commentsappend(txt);
});
});
$("#add")click(function(){
var user = $("#user")val();
var txt = $("#txt")val();
$ajax({
type:'POST',
url:"commentphp",
data:"user="+user+"&txt="+txt,
success:function(msg){
if(msg==1){
var str = "<p><strong>"+user+"</strong>:"+txt+"<span>刚刚</span></p>";
commentsappend(str);
$("#message")show()html("发表成功!")fadeOut(1000);
$("#txt")attr("value","");
}else{
$("#message")show()html(msg)fadeOut(2000);
}
}
})
})
})
<span id="page">翻页代码</span>
大致思路:
点击翻页代码里面的上一页或者下一页执行js翻页函数,通过异步发送当前当前页和执行动作到做ajax动作处理的php页面上,输出执行后的翻页代码,然后js函数回执获取ajax处理后发过来的代码,存放到id为page的span标签里面。
以上就是关于发送ajax请求到后台获取的数据不能显示到d框中,怎么办全部的内容,包括:发送ajax请求到后台获取的数据不能显示到d框中,怎么办、ajax 取某form表单 内的 name值、如何提取AJAX里的HTML内容等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)