for(var i=0;i<dsA5JbqkRowCount;i++)
{
result=GetObj.ReportJbqkRow(i,countycode).value;
document.getElementById("<%=lblInfoMsg.ClientID %>").innerHTML="表1已完成:"+(i+1)+"/"+dsA5JbqkRowCount;
if(result!="OK")
{
document.getElementById("<%=lblShowReportMessage.ClientID %>").innerHTML+="<br />"+ result;
}
//怎么即时显示 尤其是ReportJbqkRow方法需要很长时间的时候怎么让前台控件即时更新innerHTML???现在的效果是界面卡10秒不动 然后一口气显示出来
}
//怎么即时显示 尤其是ReportJbqkRow方法需要很长时间的时候怎么让前台控件即时更新innerHTML???现在的效果是界面卡10秒不动 然后一口气显示最终界面document.getElementById("<%=lblShowReportMessage.ClientID %>").??这里有没有让界面即时显示的方法可调???
解决方案 »
- 关于wap的求教
- 在gridview中,跳转传递2个以上的值
- fckeditor文章预览怎么实现
- [Serializable, ToolboxItem(true), DebuggerStepThrough, DesignerCategory("code")]
- Sql中怎樣將一個Table變量賦值給另一Table變量
- 如何使用showModelessDialog打开一个模式窗口,提交数据后刷新父窗口并关闭模式窗口?
- 100分:哪位有Repeater分页并以数字显示页码的例子!
- 网站的全站搜索是怎么实现的?
- 小弟刚对ASP产生点兴趣,哪位兄才给我介绍几本好书
- 未将对象引用设置到对象的实例
- 请教两次页面间数据传递的问题
- 这个问题怎么解决~~高手指教
var elResult = document.getElementById("<%=lblInfoMsg.ClientID %>");
//友好显示
elResult.innerHTML = '正在加载中...';
result=GetObj.ReportJbqkRow(i,countycode).value;
elResult = innerHTML="表1已完成:"+(i+1)+"/"+dsA5JbqkRowCount;
http://www.cnblogs.com/qleelulu/archive/2008/04/21/1163021.html
注释掉你的for然后放进一个函数func,就是LS说的setTimeout(func, 1000)
function func()
{
result=GetObj.ReportJbqkRow(i,countycode).value;
document.getElementById("<%=lblInfoMsg.ClientID %>").innerHTML="表1已完成:"+(i+1)+"/"+dsA5JbqkRowCount;
if(result!="OK")
{
document.getElementById("<%=lblShowReportMessage.ClientID %>").innerHTML+="<br />"+ result;
}
i++;
var timer = setTimeout(func, 1000);
if(idsA5JbqkRowCount <= i)
clearTimeout(timer);
}
提交服务端一次执行,回发到客户端,
不可能存在楼主这样的和服务端的n次交互!
如果要这样的效果异步的Ajax是可以的!
举个例子:服务端有一个for循环(相当于数据取自服务端),
js想显示依次显示循环值,事实上只能显示循环最后一个值+1,
c#:
public int i=0;
for (i = 0; i < 10; i++)
{
Page.ClientScript.RegisterStartupScript(Page.GetType(),"","fn()",true);
}
js:
function fn() {
setTimeout("fn", 3000);
alert("<%=i %>");
}
每次页面加载的时候都让数据加载一次
这样减轻服务器压力