t = new Thread( new ThreadStart( tRegister.runThread ) );
t.Start(); //进度条
RegisterStartupScript("","<script language='javascript'>document.getElementById('loadDiv').style.visibility = '';</script>");
aTimer = new System.Timers.Timer(3000);
aTimer.Elapsed += new System.Timers.ElapsedEventHandler(aTimer_Elapsed);
aTimer.Enabled = true;
} private void aTimer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
if ( !t.IsAlive )
{
aTimer.Stop();
RegisterStartupScript("","<script language='javascript'>document.getElementById('loadDiv').style.visibility = 'hidden';</script>");
btnOn_Click2();
}
}----------------------------------------------------------------------------------
结果:<div id=loadDiv> 有显示,但在Timer.Stop后却没有隐藏.
请教各位大侠了.

解决方案 »

  1.   

    这当然了,你用的是服务器端的timer,而你的页面运行在客户端,也就是说即使服务器端响应了timer事件也不会改写客户端的页面。这种操作需要用js来完成,也就是在页面来判断时效,然后决定某段是否来显示。
      

  2.   

    现在是这样的,我需要在一个Button1_ServerClick后执行的时间花的很多。所以我做了一个等待的进度条。在
    <INPUT id="Button1" class="submit_style" type="button" value="确  定" name="Button1" onclick="document.getElementById('loadDiv').style.visibility = '';" runat="server"></TD>但我前面的脚本也不会知道 Button1_ServerClick 事件执行完了,就算就可以知道 Button1_ServerClick事件执行完了,那也不会知道那个新开的线程是否执行完了呀。
      

  3.   

    JS  这个TIMER不和WINFORM里的一样
      

  4.   

    如果是客户端访问服务器端代码,参看
    http://community.csdn.net/Expert/TopicView3.asp?id=4850815
      

  5.   

    我已经解决了,用Hidden1控件,谢谢大家。