.cs for(int i = 0;i<10;i++)
{
   TextBox1.Text += i;
}.aspx
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
想在页面上看到.cs的输出过程,该怎么做? 求简单例子

解决方案 »

  1.   

    最简单的。在界面上放一个ScriptManager,一个Timer(它们在ajax组可以找到)和一个Label。
    将Timer的时间间隔设置为1000。也就是1秒。在Timer1的Tick中编写如下代码:
    int n = Convert.ToInt32(Label1.Text);
    Label1.Text = (n >= 10) ? "10" : (n + 1).ToString();
      

  2.   

    TextBox1.Text += i;
    后面加一句response.write("i="&i&"<br />");
      

  3.   

    如此“逐条输出”。就是分行显示啊
    给文本框TextMode设置MultiLine。
    TextBox1.Text += i;
    =〉
    TextBox1.Text += (i.ToString() + "\n");
      

  4.   


    这样做也是for执行完毕后,在页面上才看到执行结果吧?
    我需要的是for执行时,也能在页面上看到执行的过程.
      

  5.   


    一定要用for循环的..我不是单纯的输出数字
    我估计要用AJAX或者XMLHTTPRequest 才能实现
      

  6.   

    这个是..换行吧??
    当for执行第一次(i=0)时,页面上TextBox1的值变为0
    当for执行第一次(i=1)时,页面上TextBox1的值变为0 1
    当for执行第一次(i=2)时,页面上TextBox1的值变为0 1 2
    我是要在页面上看到TextBox1的值的改变过程...
      

  7.   

    我是用for循环来生成需要的静态页面,现在是需要在页面即时看到那些页面已经生成
      

  8.   

    有两种简单的方法:
    一、把页面超时时间设的足够长,设置页面缓存,每输出一行flush一次修改控件值的脚本。
    二、一次将数据输出到浏览器中,然后用js控制达到逐条显示的效果。
      

  9.   

    这个还是很早以前写asp的时候为了显示一段脚本的执行过程想的办法,方法不是很好,不过简单:
    for (int i = 0; i < 10; i++)
    {
        DateTime dtm = DateTime.Now;
        while (DateTime.Now.Subtract(dtm).TotalSeconds < 2) ;
        Response.Write("<script type='text/javascript'>document.body.all.txtMain.value = " + i + ";</script>\n");
        Response.Flush();
    }现在来说可能用ajax做长连接比较好,不过那时候还不知道ajax为何物。
      

  10.   

    一看就是新手、控件流。生成静态的时候,用FOR是不对的,比如你有5000篇文章要生成,你FOR这一下,要等5000篇生成完后客户端才会有反……这个时间将非常的长,还没等你整完,已经超时了,或者你要说改超时时间,当然,那是可以的但那时你会知道“等待是种煎熬”我见过的做法:
    Default.aspx中获取要生成的文章主键列表,例如ID=[1,2,3,4,5,6];丢给JS(建议使用Jquery框架的ajax)JS数组循环(这里要考虑等上一次生成执行完之后才能取下一个ID)ajax将ID值做为参数POST给Create.ashx(此程序负责生成)例如 Create.ashx?ID=1 这样的形式。生成完毕Create.ashx输入“生成XXXX成功”的信息JS将此信息通过DOM操作显示在Default.aspx的页面上。要简单示例,加QQ:603869636