0
モーダルポップアップ用のASP.Netサーバーコントロールがあり、Telerik Ajaxを使用しています。ウィンドウがポップアップすると、マウスホイールを使用するとブラウザウィンドウがスクロールし続けるので、そのウィンドウを無効にします。Telerik Ajaxを使用したモーダルポップアップのASP.Netサーバーコントロールとブラウザウィンドウのスクロールを無効にする必要があります
javascriptを実行して、以下のようなサーバーコントロールからのアラートを表示しようとしましたが、何も起こりませんでした(実際には、ブラウザウィンドウのスクロールを無効にするためにコメント行を使用したかったのです)。サーバー制御コードはポストバック時に実行されます(初期ページの読み込み時ではありません)。他に何が必要なのかわからない
protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);
//register javascript here if needed
AddScript();
}
private void AddScript()
{
ClientScriptManager csm = this.Page.ClientScript;
string scriptblock = "<script type=\"text/javascript\">alert('hi');</script>";
//string scriptblock = "<script type=\"text/javascript\">$(\"body\").css(\"overflow\", \"hidden\");</script>";
string scriptname = "DisableBrowserScrollBar()";
Type csType = this.GetType();
if (!csm.IsClientScriptBlockRegistered(csType, scriptname))
{
csm.RegisterClientScriptBlock(csType, scriptname, scriptblock, false);
}
}
は私がRadScriptManagerへの参照を持っていないサーバーコントロールから、これを行うにしようとしていますのでご注意ください。私のページテンプレートベースクラスから同じことを(AddScript()を呼び出す)、すべてのページが上手く動作するからです。 –
私はTelerik Supportに連絡しました。彼らはそれがTelerik AJAXコントロールの問題であると言いました。サーバーコントロールからではなく、ページベーステンプレートのマスターページへのRadScriptManagerリファレンスを使用してスクリプトを注入する必要があります。 –