asp.Net現在のウィンドウを閉じる

2934 ワード

[ガイド]
現在のウィンドウを閉じます.これは、Webサイトの開発でよく使用される効果です.この効果は、通常、ボタンをクリックしたり、現在の操作をキャンセルしたり、メッセージ・プロンプトのエラーが返されたり、システムを終了したりするイベントに伴って発生します.ある
現在のウィンドウを閉じます.これは、Webサイトの開発でよく使用される効果です.この効果は、通常、ボタンをクリックしたり、現在の操作をキャンセルしたり、メッセージ・プロンプトのエラーが返されたり、システムを終了したりするイベントに伴って発生します.
ウィンドウを閉じる実装コードをフロントエンド(フロント、ページ)に書くのが好きな人もいれば、バックエンド(バックグラウンド、サーバ)に書くのが好きな人もいます.本稿では、一般的に使用される「現在のウィンドウを閉じる」実装方法についてまとめます.
フロントエンドインプリメンテーション(jsスクリプト)
1 
<span style="color:rgb(0,128,128);">2</span>   <span style="color:rgb(0,0,255);">function</span> closewin(){
<span style="color:rgb(0,128,128);">3</span>     <span style="color:rgb(0,0,255);">this</span>.window.close();
<span style="color:rgb(0,128,128);">4</span>   }
<span style="color:rgb(0,128,128);">5</span> 

 
の[メンバープロファイル]タブに反映されます.
  
  
もちろん、コントロールのイベントにjavascriptコードを直接書くこともできます
  
 
バックグラウンド実装バックグラウンドインプリメンテーションとは,その名の通りバックグラウンドコードを実行して「現在のウィンドウを閉じる」ことを実現することである.しかし、実際にはバックグラウンドコードとは実質的にフロントのスクリプトを生成するために現在のウィンドウを閉じるためである.
その中で最も直接的なのはResponseを使うことです.Write()メソッド
  Response.Write("window.close();");//閉じるかどうかを尋ねるポップアップが表示されます
  Response.Write("window.opener=null;window.close();");//質問はポップアップされません
  window.Openerは一般的な使い方では、ウィンドウを閉じるときにポップアップウィンドウを提示しないだけで、より深い理解は一般的に少ない.実はOpenerとはwindowを呼び出すことです.Openメソッドのウィンドウ.
  
あるいはアトリエを使ってもいいですAddメソッドは、ページコントロールにイベント属性を追加します.
  this.コントロールID.Attributes.Add( "onclick ", "javascript:window.close(); ");
 
もう1つの方法は、RegisterStartupScript()メソッドを使用して実行スクリプトを登録することです.
RegisterStartupScriptには2つの可能な構造があります.
  RegisterStartupScript (type, key, script)
  RegisterStartupScript (type, key, script, script tag specification)
最初のパラメータはスクリプトを登録するコントロールIDで、このページであれば試してみました.
2番目のパラメータは登録スクリプトコントロールタイプで、コントロールであれthisのGetType()であれ、typeOf(string)でも問題ありません.
3番目のスクリプト関数の名前は、勝手につけます.
4つ目はスクリプトの内容です.
5つ目はスクリプトラベルを追加するかどうかを示し、4つ目のパラメータにラベルが含まれている場合はfalse、そうでない場合はtrueです.


このメソッドを提供するクラスは2つあります:ScriptManager.RegisterStartupScriptとClientScript.RegisterStartupScript


  ScriptManager.RegisterStartupScriptは、updatepanleのようなAjaxコントロールを使用していますが、このときPage.ClientScript.RegisterStartupScriptは使えません.ScriptManagerコントロールが追加されていない場合、ScriptManagement.RegisterStartupScriptを使用できます.


以下はScriptManager.RegisterStartupScriptの書き方:


  ScriptManager.RegisterStartupScript(Page,this.GetType(), "CloseWin", "window.close(); ", true);


以下はClientScript.RegisterStartupScriptの書き方:


  Page.ClientScript.RegisterStartupScript(this.Page.GetType(), "CloseWin", "window.close(); ", true);



ネットからの記事編集ありがとう:dezai