我想自动提交表单并在提交后显示更新进度区域。我已经厌倦了向页面添加2个功能:
window.onload=function(){
__doPostBack('UpdatePanelId','');
}
和....
window.onload=function(){
var btn = document.getElementById('buttonID');
btn.click();
}
页面被回发,但进度区域没有显示。我有什么想法可以解决这个问题吗?
答案 0 :(得分:1)
根据您的进一步评论:
您在该面板之外有UpdatePanel
和SomeUploadControl
。当您从UpdateProgress
导致完全回传时,您希望显示SomeUploadControl
。
如果上述假设是正确的 - 我担心你不能做你想做的事。 UpdateProgress
背后的整个想法是处理PARTIAL POSTBACKS。
我很确定以上是正确的,但我可能会弄错。
根据您的评论编辑:)
尝试:
window.onload=function(){
__doPostBack('buttonID','');
}
如果这不起作用 - 提供有关您尝试解决的问题的更多详细信息(为什么要尝试通过javascript进行回发),并且可能有更好的方法。
答案 1 :(得分:0)
我得到了它的工作!!
Origianlly,我让我的脚本在ScriptManager客户端脚本块中运行。我将它移到脚本管理器之外,并在脚本中添加了超时。这是它的样子:
Dim script As String = "window.onload = function(){" & vbCrLf
script += "setTimeout('submitPage()',2000);}" & vbCrLf
script += "function submitPage(){" & vbCrLf
script += " var btn = document.getElementById('" & Me.btnProcess.ClientID & "');" & vbCrLf
script += "btn.click();}" & vbCrLf
ClientScript.RegisterClientScriptBlock(Me.Page.GetType, "autosubmit", script, True)