2009-06-09 7 views
-1

私はThread.sleep(5000)を使用していて、Page.ClientScript.RegisterClientScriptBlock(type、key、script)関数を使用して新しいウィンドウを開きます。 5つの新しいウィンドウが表示されますが、5秒ごとに表示されるわけではありませんが、25秒後にはすべて表示されます。ここに私のサンプルコードがあります:サーバーサイドコードを使用して、5秒ごとに新しいウィンドウを開くにはどうすればよいですか?

for(int i=0;i<5;i++) 
{ 
    System.Threading.Thread.Sleep(5000); 
    string openPage = "<script type='text/javascript' language='javascript'>"; 
    openPage += "window.open('http://www.winpossible.com','mywindow" + i + "','width=600,height=800,toolbar=no,location=Yes,directories=no,status=no,resizable=yes');";      openPage += "</script>"; 

    // Open a new window if there is a new teacher-Student pair comes. 
    Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "sample" + i, openPage); 
} 

この問題に対するあなたの洞察力豊かで優雅な解決策を前もっておねがいします。 ; o)

答えて

1

サーバー側のコードを使用する場合はサーバー上で実行され、すべての遅延はになります。の前にHTMLページをクライアントに送信します。

HTMLページがクライアントに到達すると、5ページが一度に表示されます。

あなたがする必要があるのは、JavaScriptを使用してページを開くことです。この例では

ルック:

http://javascript.internet.com/navigation/delayed-popup.html

これは、遅延の後に新しいウィンドウが開き、あなたの5つのウィンドウを開くために同じ概念を使用することができます。

サーバーサイドコードから行うことはできません。

関連する問題