効果: たとえば、機器管理システムでは、機器番号をどこかに記入する必要がありますが、通常、機器番号を覚えるのは難しく、覚えられるのはどの部門のどの場所にある機器だけです。したがって、テキスト ボックスの横にボタンを追加します。クリックすると、デバイス番号とデバイスのさまざまな詳細を比較するテーブルが表示されます。場所を指定するには、このレコードをダブルクリックすると、デバイス番号が入力されます。
実装プロセス:
親ページで新しいウィンドウを開くための JavaScript 関数は次のとおりです。
関数openpage(htmlurl)
{
var newwin=window.open(htmlurl,"newWin","toolbar=no,location=no,directories=no,status=no,scrollbars=yes,menubar=no,
サイズ変更可能=はい、上=100、左=200、幅=650、高さ=300");
newwin.focus();
false を返します。
}
</script>コールインボタン:
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="return openpage('child.aspx');"/>
サブページはグリッドビューのデータ ソースをバインドし、その RowDataBound イベントに次のコードを書き込みます。
protected void GridView1_RowDataBound(オブジェクト送信者、GridViewRowEventArgs e)
{
string s = "window.opener.document.getElementById('textbox1').value='" + e.Row.Cells[1].Text + "'; window.close();";
if (e.Row.RowType != DataControlRowType.Header)
{
e.Row.Attributes.Add("ondblclick", s);//選択範囲をダブルクリックします
//マウスが上に移動すると、線の色を「」に設定し、元の背景色を保存します
e.Row.Attributes.Add("onmouseover", "currentcolor=this.style.backgroundColor;this.style.backgroundColor='#C0C0FF';this.style.cursor='hand';");
//マウスを離したときに行の背景色を元に戻す
e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=currentcolor");
}
}説明: window.open を通じて新しいページを開きます。2 つのページの間には親子関係があります。子ページは opener を通じて親ページ (親ページに記述されたコントロールや js 関数) にアクセスでき、親ページも sub を通じて子ページにアクセスできます。たとえば、親ページに js 関数 Sayhello() がある場合、子ページでそれを呼び出すには opener.sayhello() だけが必要です。
ほんの少量の Javascript コードを使用し、それを asp.net と組み合わせることで、非常に有益な効果が得られます。