如果使用弹出对话框的代码如下,则经常会在使用对话框提交时页面出现背景白屏的现象
Protected Sub Msg(ByVal strMsg As String)
Response.Write("<Script language='JavaScript'>alert('" & strMsg & "')</Script>")
End Sub
解决的办法,更改这段代码为:
Protected Sub Msg1(ByVal strMsg As String)
Page.RegisterStartupScript("check", "<Script language='JavaScript'>alert('" & strMsg & "')</Script>")
End Sub
以下内容转:RegisterStartupScript和RegisterClientScriptBlock输出位置的区别
Page.Response.Write("<script>var response;</script>");
Page.RegisterStartupScript("RegisterStartupScript","<script>var RegisterStartupScript;</script>");
Page.RegisterClientScriptBlock("RegisterClientScriptBlock","<script>var RegisterClientScriptBlock;</script>");
Response.Write输出后的位置在源文件的第一行.
RegisterClientScriptBlock输出后的位置会在<form>的下一行.(在asp.net自带的脚本和一些隐藏域之下).
RegisterStartupScript输出后的位置会在</form>的上一行.
RegisterClientScriptBlock的原型与RegisterStartupScript相同,两个函数不同在于将其包含的脚本代码写入到HTML文件的不同位置.RegisterClientScriptBlock在 Page 对象的 元素的开始标记后立即发出客户端脚本,RegisterStartupScript则是在Page 对象的 元素的结束标记之前发出该脚本。如果你的脚本有与页面对象(doucument对象)进行交互的语句,则推荐使用RegisterStartupScript,反之如果要想客户端脚本尽可能早的执行,则可以使用RegisterClientScriptBlock或Response.Write。
RegisterClientScriptBlock一般返回的是客户端函数的包装,而RegisterStartupScript返回得函数在document装载完成后会执行,类似于我们平时所说的body onload="f()"里面的函数;这两个方法在客户端呈现的代码位置不同,RegisterClientScriptBlock在<form runat=server>之后,而RegisterStartupScript在</form>之前。
补充例子:
....
</HEAD>
<body MS_POSITIONING="GridLayout">
<form name="Form1" method="post" action="WebForm6.aspx" id="Form1">
<input type="hidden" name="__VIEWSTATE" value="dDw3MzU1MTQ5MzY7Oz6nugrEg+5T6RC7MTIuLoIrMLQLPw==" />
<script>function block(){}</script> ------------>RegisterClientScriptBlock()方法输出的在这里
<input name="TextBox1" type="text" id="TextBox1" style="Z-INDEX: 101; LEFT: 296px; POSITION: absolute; TOP: 120px" />
<script>function startup(){}</script> ------------>RegisterStartupScript()方法输出的在这里
</form>
</body>
</HTML>
分享到:
相关推荐
asp.net中模式对话框的使用asp.net中模式对话框的使用
asp.net中常用的弹出对话框的技巧.比较适合初学者.
弹出对话框,C#和VB.net的
Asp.net弹出对话框控件汉化修正版_popupwin.zip
ASP.NET源码——Asp.net弹出对话框控件汉化修正版.zip
一套优秀的基于ASP.NET弹出对话框popUp控件源码及例子代码
Asp.net弹出对话框控件
ASP.NET利用全局变量Application,局部变量session实现网页对话框
试了好多还是不行 终于找到一个能用于web打开的savefiledialog或者openfiledialog了 需要添加system.windows.forms引用
asp.net(C#)里点击页面某一项,弹出对话框显示其详细信息,并可以设置自动关闭对话框的时间。
asp.net mvc core 使用js dialog对话框 asp.net mvc core 使用js dialog对话框
asp.net 中使用iframe动态加载页面
【ASP.NET编程知识】基于.Net实现前端对话框和消息框.docx
asp.net 使用保存文件对话框! 很值得下载看看!资源免费,大家分享!!
asp.net 页面防止重复提交(可用)
asp.net漂亮弹出对话框控件 asp.net漂亮弹出对话框控件
普通的asp.net 2.0应用程序中,如果需要弹出一个对话框,可以使用 Response.Write("<script>alert('弹出一个对话框');</script>"); 在ajax页面中,不能使用上述方法,但是在AJAX中的ScriptManager却提供了弹出...
我们在.NET程序的开发过程中,常常需要和用户进行信息交互,比如执行某项操作是否成功,“确定”还是“取消”,以及选择“确定”或“取消”后是否需要跳转到某个页面等,下面是本人对常用对话框使用的小结,希望对...