C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: ASP.Netが出力した後にJavaScriptを出力したい


(過去ログ 99 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■59091 / inTopicNo.1)  ASP.Netが出力した後にJavaScriptを出力したい
  
□投稿者/ Mira (38回)-(2011/05/12(Thu) 12:31:38)

分類:[ASP.NET (VB)] 

いつもお世話になります

ButtonのClickイベント等でJavaScriptを出力することがあるのですが
ASP.Netが自動で出力するJavaScriptよりも後に出力することはできるでしょうか?
(もしくは出力の順番は先でもPageの最後にJavaScriptを実行できれば問題ないです)

例えば、このようなコードの場合(スクリプトは簡略化してます)
Protected Sub Button1_Click(sender As Object, e As System.EventArgs) Handles Button1.Click
TextBox1.Focus()
Dim ScriptValue As String = "<script language=JavaScript>window.open('ablut:blank','_blank');</script>"
Page.ClientScript.RegisterStartupScript(Me.GetType, "Open", ScriptValue)
End Sub

ボタンをクリックした後に出力されるJavaScriptは
WebForm_AutoFocusよりwindow.openが先になります
WebForm_AutoFocusより後に出力する方法があれば教えてください

環境はFrameWork2.0ですが新しいFrameWorkで実現できるという情報がもしあれば
それも教えてください


引用返信 編集キー/
■59231 / inTopicNo.2)  Re[1]: ASP.Netが出力した後にJavaScriptを出力したい
□投稿者/ tomo (3回)-(2011/05/19(Thu) 16:06:26)
こんにちは。

ページのLoadイベントに、
動かしたい関数を指定することで解決できないでしょうか?

--
Dim script As StringBuilder
script = New StringBuilder()

script.AppendLine("<script type='text/javascript'>")
script.AppendLine("<!--")

'myFunctionの定義
script.AppendLine("function myFunction() { ")
script.AppendLine("window.open('ablut:blank','_blank');")
script.AppendLine("} ")

'LoadイベントにmyFunctionを追加
script.AppendLine(" if (window.addEventListener){ ") 'W3C standard用
script.AppendLine(" window.addEventListener('load', myFunction, false); ")
script.AppendLine(" } ")
script.AppendLine(" else if (window.attachEvent) { ") 'IE用
script.AppendLine(" window.attachEvent('onload', myFunction); ")
script.AppendLine(" } ")

script.AppendLine("// -->")
script.AppendLine("</script>")

Page.ClientScript.RegisterStartupScript(Me.GetType, "Open", script.ToString)

--

参考:Javascript評価順
http://d.hatena.ne.jp/mtoyoshi/20080420/1208653027

引用返信 編集キー/
■59356 / inTopicNo.3)  Re[2]: ASP.Netが出力した後にJavaScriptを出力したい
□投稿者/ Mira (41回)-(2011/05/23(Mon) 12:54:16)
tomoさん回答ありがとうございます

回答見逃してました申し訳ありません

教えていただいた方法で実装することができました

ありがとうございました
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -