- - PR -
smartnavigation="true"の際のJavaScriptの動作について
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2003-12-04 15:46
はじめまして。
ASP.NET(VB)でWEBアプリケーションを作成しております。 ある画面で、画面の再描画が発生する為、smartnavigation="true" に設定しました。 すると、smartnavigation="true"に設定する前までは問題なく動いていた 別画面を起動するJavascriptがエラーになるようになりました。 ASPX上にそのまま書いているJavascriptは問題なく動作するのですが、DLLより Response.WriteでJavascriptを動作させた場合にエラーとなってしまいます。 お心当たりのある方がいらっしゃいましたら、ご教授願えませんでしょうか。 宜しくお願い致します。 | ||||
|
投稿日時: 2003-12-04 16:49
同じ現象がでて、自分でコードを書いて逃げた口ですが、、、、
もしすぐにできるなら試していただけないでしょうか。 Response.Write(script)としているところを、 RegisterStartupScript("NewWindow", script) とすると、どうなりますか? Response.Writeメソッドを使うと、ソースを見ればわかりますが、HTMLタグの外にスクリプトを書きます。ここに原因があるのではないかと、ふと思いましたので。 | ||||
|
投稿日時: 2003-12-04 16:56
RegisterStartupScript メソッド、RegisterClientScriptBlock メソッド
あたりを調べ、試してみてください。 こちらでは、これで直りました。 原因はJittaさんの言われているとおりだと思います。(深くは追っていないですが) #ちなみにRegister〜Script形で登録したスクリプトがソースの表示で出ないんですよねぇ。 #Jittaさんなど皆さんのところでは出ますか? | ||||
|
投稿日時: 2003-12-04 17:05
でますよ。ただ、なぜか、Startupは/formの直前くらい(とにかく後ろの方)、CrientScriptBlockはform要素の直前くらいにあります。む?Startupだから、オブジェクトがそろう後ろにあるのか。 それより、Register*Script*なんだから、script要素で囲ってよ!!ってかんじ。 | ||||
|
投稿日時: 2003-12-04 17:38
返信ありがとうございます。なみへーです。
Jittaさんの
でJavascriptが正常に動作するようになりました! ありがとうございます! RegisterStartupScriptは、今の今まで知りませんでした・・・(反省です) ヘルプを見たのですが、Response.WriteよりもRegisterStartupScriptのほうが 使い勝手が良さそうな気がしましたが、実際どうなんでしょう? #私も、RegisterStartupScriptで出力した場合、ソースの表示では、内容が表示 されませんでした・・・ [ メッセージ編集済み 編集者: なみへー 編集日時 2003-12-04 17:49 ] | ||||
|
投稿日時: 2003-12-04 17:59
なみへーさん、良かったですね。^^
出るんですね。安心しました。 設定の問題ですかねぇ。ここでは出ないです...。 ポストバック後のページではなく、ポストバック前のページが出ている!? ちょっと時間があるときに調べてみます。 別話ごめんなさい。 | ||||
|
投稿日時: 2003-12-05 08:18
え〜?!おかしいなぁ?エラーになっているから?そういえば、エラーにならないときは確認していなかった。その辺のソースさわるときに確認します。 | ||||
|
投稿日時: 2003-12-05 16:08
> エラーにならないときは確認していなかった。
確認しました。少なくとも、StartupScriptはソースを見るで見られます。ただ、おそらく1行だけになるので、見つけにくいです。Validateコントロールがあると、その関数の直前、Form要素の終了直前に挿入されています。 |
1