0

フォームを自動送信し、送信後に更新の進行状況エリアを表示したいと考えています。ページに 2 つの機能を追加するのにうんざりしています。

window.onload=function(){
     __doPostBack('UpdatePanelId','');
}

と....

window.onload=function(){
     var btn = document.getElementById('buttonID');
     btn.click();
}

ページはポストバックされますが、プログレス エリアは表示されません。どうすればこれを処理できますか?

4

2 に答える 2

1

あなたのさらなるコメントに基づいて:

そのパネルの外側にUpdatePanelandがあります。からFULL POSTBACKを発生させたときSomeUploadControlに表示したい。UpdateProgressSomeUploadControl

上記の仮定が正しければ、あなたが望むことはできないと思います。背後にある全体的なアイデアは、部分的なUpdateProgressポストバックに取り組むことです。

上記が正しいと確信していますが、間違っている可能性があります。


あなたのコメントに照らして編集しました:)

試す:

window.onload=function(){
     __doPostBack('buttonID','');
}

これがうまくいかない場合 - 解決しようとしている問題の詳細を教えてください (なぜ JavaScript 経由でポストバックを起こそうとしているのか)。もっと良い方法があるかもしれません。

于 2009-11-05T21:43:10.383 に答える
0

私はそれを働かせました!!

もともと、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)
于 2009-11-06T00:52:54.540 に答える