aspx ページで js 関数を呼び出すために使用したい関数があります。ClientScript ルートを使用しています。ただし、いくつかのフォーラムを調べましたが、機能していないようです。簡単なものだといいのですが..「ページ」の有無にかかわらず試してみました。
私の背後にあるコード:
protected void btOpen_Click(object sender, EventArgs e)
{
Session["demog"] = 144;
Page page = HttpContext.Current.CurrentHandler as Page;
page.ClientScript.RegisterStartupScript(this.GetType(), "closeWindow", "closeWin();", true);
}
js 関数:
<script type="text/javascript">
function closeWin() {
alert("closing!");
GetRadWindow().close();
}
function GetRadWindow() {
var oWindow = null;
if (window.radWindow)
oWindow = window.radWindow;
else if (window.frameElement.radWindow)
oWindow = window.frameElement.radWindow;
return oWindow;
}
</script>
<telerik:RadButton ID="btnOpen" runat="server" Text="Open" OnClick="btOpen_Click">
<Icon PrimaryIconCssClass="rbOpen" PrimaryIconLeft="4" PrimaryIconTop="4"></Icon>
</telerik:RadButton>
</telerik:RadAjaxPanel>
onClientClick として closeWin() を呼び出すキャンセル ボタンがあり、正常に動作します。onClientClick などではなく、onClick を使用しているためでしょうか。