ajax异步在页面造成的问题
来源:互联网 发布:中兴软创 知乎 编辑:程序博客网 时间:2024/05/01 15:24
ajax的异步可能会导致之前获取的数据,后面获取不到,原因是ajax还在加载。此时分两个函数分别设置延时调用,或者用同步
function detail(id) {
//获取数
alert(id);
var datag;
var ui='<%=detailuii%>';
var urll =ui+id;
$.ajax({
type:'get',
url:urll,
async:false,
data:'',
success:function(data){
alert(data);
datag=data;
}
});
$("#detail-form").append('');
var table = '<table width="100%" border="0" cellspacing="0" cellpadding="0">';
for(var i=0;i<datag.data.length;i++){
if(datag.data[i].id==id){
table += '<tr style="height:25px; line-height:25px;padding-left:10px;">'
+'<th align="left" width="25%" >ip地址:</th>';
if(datag.data[i].ipaddr==""||datag.data[i].ipaddr==null){
table += '<td align="left" width="25%" ></td>';
}else{
table += '<td align="left" width="25%" >'+datag.data[i].ipaddr+'</td>';
}
table += '<th align="left" width="25%" >用户名:</th>';
if(datag.data[i].name==""||datag.data[i].name==null){
table += '<td align="left" width="25%" ></td>';
}else{
table += '<td align="left" width="25%" >'+datag.data[i].name+'</td>';
}
table += '</tr>'
+'<tr style="height:25px; line-height:25px;padding-left:10px;">'
+'<th align="left" width="25%" >描述:</th>';
if(datag.data[i].ms==""||datag.data[i].ms==null){
table += '<td align="left" width="25%" ></td>';
}else{
table += '<td align="left" width="25%" >'+datag.data[i].ms+'</td>';
}
table +='</tr>';
}}
table += '</table>';
$("#detail-form").append(table);
document.getElementById("detail-form").style.display= "block";
$("#detail-form").dialog({
autoOpen : false,
height : 'auto',
width : 590,
modal : true,
onClose:function(){
$("#detail-form").empty();
$("#detail-form").attr("style", "display: none;overflow-y:auto;height:100%;");
}
});
$("#detail-form").dialog("open");
}
function detail(id) {
//获取数
alert(id);
var datag;
var ui='<%=detailuii%>';
var urll =ui+id;
$.ajax({
type:'get',
url:urll,
async:false,
data:'',
success:function(data){
alert(data);
datag=data;
}
});
$("#detail-form").append('');
var table = '<table width="100%" border="0" cellspacing="0" cellpadding="0">';
for(var i=0;i<datag.data.length;i++){
if(datag.data[i].id==id){
table += '<tr style="height:25px; line-height:25px;padding-left:10px;">'
+'<th align="left" width="25%" >ip地址:</th>';
if(datag.data[i].ipaddr==""||datag.data[i].ipaddr==null){
table += '<td align="left" width="25%" ></td>';
}else{
table += '<td align="left" width="25%" >'+datag.data[i].ipaddr+'</td>';
}
table += '<th align="left" width="25%" >用户名:</th>';
if(datag.data[i].name==""||datag.data[i].name==null){
table += '<td align="left" width="25%" ></td>';
}else{
table += '<td align="left" width="25%" >'+datag.data[i].name+'</td>';
}
table += '</tr>'
+'<tr style="height:25px; line-height:25px;padding-left:10px;">'
+'<th align="left" width="25%" >描述:</th>';
if(datag.data[i].ms==""||datag.data[i].ms==null){
table += '<td align="left" width="25%" ></td>';
}else{
table += '<td align="left" width="25%" >'+datag.data[i].ms+'</td>';
}
table +='</tr>';
}}
table += '</table>';
$("#detail-form").append(table);
document.getElementById("detail-form").style.display= "block";
$("#detail-form").dialog({
autoOpen : false,
height : 'auto',
width : 590,
modal : true,
onClose:function(){
$("#detail-form").empty();
$("#detail-form").attr("style", "display: none;overflow-y:auto;height:100%;");
}
});
$("#detail-form").dialog("open");
}
0 0
- ajax异步在页面造成的问题
- jQuery中ajax异步请求造成的问题
- ajax异步加载页面片段的后退问题
- ajax异步问题导致的刷新页面数据不更新
- Ajax学习之在一个页面中异步的加载另一个页面内容
- Asp.net 前台Ajax调用后台静态方法(异步,不会造成页面刷新)
- 0.jquery 验证,以及显示出现错误的地方 1.当用jquery.validate与ajax时候特别小心在每句后面的逗号问题,如果不需要的地方加上逗号会造成页面无法进入js验证
- 异步获取数据Ajax,以及对获取的数据进行绑定(显示在页面上)
- Ajax异步加载将返回的map解析在页面显示
- 异步获取数据Ajax,以及对获取的数据进行绑定(显示在页面上)
- 页面ajax异步请求
- .NET ajax 阻止联动造成页面刷新
- SharePoint 2013 Ajax 造成页面无法编辑
- JavaScript造成页面显示的问题及其解决
- SubmitOncePage:解决刷新页面造成的数据重复提交问题
- 解决刷新页面造成的数据重复提交问题
- SubmitOncePage:解决刷新页面造成的数据重复提交问题
- (小经验)ASP.NET页面的编码问题,网上支付造成
- js jsp 数据交互
- 重新连接 到 时出错 Microsoft Windows Network:本地设备名已在使用中
- js控制判断
- 【转】我国交通信号控制产品市场及技术的现状和发展
- 【转】IE下png图片透明失效的bug解决方案
- ajax异步在页面造成的问题
- 太字节
- Oracle服务扫描工具Oscanner
- 冒泡算法
- web-inf 编译目录
- 【转】在C#中隐藏主窗口的方法
- C# 中如何获得屏幕宽度和高度
- 多线程
- mysql 1055 group by的错误