请看下面的代码:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
Response.Write("<table><tr><td>some text</td></tr></table>")
Response.Flush()
Threading.Thread.Sleep(3000)
Response.Write("<table><tr><td>some text</td></tr></table>")
Response.Flush()
Threading.Thread.Sleep(3000)
Response.Write("<table><tr><td>some text</td></tr></table>")
Response.Flush()
Threading.Thread.Sleep(3000)
Response.Write("<table><tr><td>some text</td></tr></table>")
Response.Flush()
Threading.Thread.Sleep(3000)
End Sub
该代码按照我的预期工作,即生成一个 HTML 表格并将其写入屏幕,然后三秒后生成另一个表格并将其添加到屏幕等。
我有一个网页,可以动态添加 x 个表(http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.table%28v=vs.110%29.aspx http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.table%28v=vs.110%29.aspx) 到网页。但是,Response.Flush 似乎不起作用。我创建了下面的简单代码来解释该问题:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
Dim Table1 As New Table
Dim r As New TableRow()
Dim c As New TableCell()
c.Text = "Test 1"
r.Cells.Add(c)
Table1.Rows.Add(r)
Response.Flush()
Threading.Thread.Sleep(3000)
Dim Table2 As New Table
Dim r2 As New TableRow()
Dim c2 As New TableCell()
c.Text = "Test 2"
r.Cells.Add(c)
Table1.Rows.Add(r)
End Sub
是否可以将 table1 刷新到客户端,然后等待几秒钟,然后刷新 table2 或者是否必须向 response.write 写入一个字符串?
To use Response.Flush
这样你就需要自己输出所有的HTML代码Response.Write
.
您无法使用 Web 控件,因为它们在页面完成之前不会呈现。 Web 控件仅作为对象存在,直到Page_Render
整个页面呈现为 HTML 代码,然后发送到浏览器的阶段。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)