Telerik RadWindow - 我无法使用模态选项,这可能是什么原因造成的?

发布于 2024-12-22 09:59:34 字数 1063 浏览 1 评论 0原文

我们正在升级到 Telerik 控件的 4.0 版本,由于某种原因,RadWindow Modal 选项不起作用(即当然)。

我们在母版页中定义了所有窗口,并通过在用户控件中单击按钮时执行 javascript 来打开它们。

<radW:RadWindowManager ID="RadWindowManager1" runat="server" Behavior="none" Skin="Outlook" Modal="true"
        VisibleStatusbar="False" VisibleTitlebar="false">
    <Windows>
        <radW:RadWindow ID="Help" runat="server" Title="Help" Height="600" Width="975" ReloadOnShow="True"
            Modal="True" OnClientClose="InvolvementCallBackFunction" OnClientShow="OnClientShow" OnClientPageLoad="OnClientPageLoad" ShowContentDuringLoad="false" />
    </Windows>
</radW:RadWindowManager>

Js

function ShowPopupForm(location, formName, returnValue) {
    var oManager = GetRadWindowManager();
    var oWnd = oManager.getWindowByName(formName);
    oWnd.set_modal(true);
    oWnd.setUrl(location);
    oWnd.show();
    return returnValue;
}

单击按钮后会显示窗口,但它不是模态的!

奇怪的是,如果所有内容都在同一页面中并且我使用 OpenerElementID 属性,我就可以让它工作。

有什么想法吗?

We are upgrading to version 4.0 of the telerik controls and for some reason the RadWindow Modal option does not work (ie of course).

We have all of our windows defined in our masterpage and we open them by executing javascript on a button click in a user control.

<radW:RadWindowManager ID="RadWindowManager1" runat="server" Behavior="none" Skin="Outlook" Modal="true"
        VisibleStatusbar="False" VisibleTitlebar="false">
    <Windows>
        <radW:RadWindow ID="Help" runat="server" Title="Help" Height="600" Width="975" ReloadOnShow="True"
            Modal="True" OnClientClose="InvolvementCallBackFunction" OnClientShow="OnClientShow" OnClientPageLoad="OnClientPageLoad" ShowContentDuringLoad="false" />
    </Windows>
</radW:RadWindowManager>

Js

function ShowPopupForm(location, formName, returnValue) {
    var oManager = GetRadWindowManager();
    var oWnd = oManager.getWindowByName(formName);
    oWnd.set_modal(true);
    oWnd.setUrl(location);
    oWnd.show();
    return returnValue;
}

After the button is clicked the window displays, however it is not modal!

Oddly enough I can get this to work if everything is in the same page and I use the OpenerElementID attribute.

Any ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

腻橙味 2024-12-29 09:59:34

这是一些奇怪的行为。您是否尝试过检查页面的 CSS 以查看您自己的某些样式表是否与 Telerik 类相互关联?尝试禁用您自己的所有 CSS,看看它是否修复了模式。我也不认为 set_modal(true) 调用是必要的,因为 Modal 属性已在标记中设置为 true。

另外,我想到了另一种想法 - 如果您有多个管理器,GetRadWidnowManager() 可能会返回对另一个非模态管理器的引用。看看这篇文章解释了这样的场景,它是一个救星。

您还可以尝试删除事件处理程序进行测试,看看其中的某些内容是否会更改模式和/或在 IE 下引发 JS 错误。

This is some odd behavior. Have you tried examining your page's CSS to see if some of your own stylesheets interefere with the Telerik classes? Try disabling all your own CSS and see if it fixes the modality. I also do not think the set_modal(true) call is necessary, as the Modal property is already set to true in the markup.

Also, another thought comes to mind - if you have more than one manager GetRadWidnowManager() might be returing a reference to the other that is not modal. Take a look at this article that explains such a scenario, it's been a lifesaver.

You can also try removing your event handlers for testing and see if something in them changes the modality and/or throws a JS error under IE.

旧故 2024-12-29 09:59:34

好吧,我明白了!

Telerik 不喜欢您的 html 页面中有自闭 div 标签。 (无论如何)

<div />

<div></div>

Ok I got it!

Telerik does not like it if you have a self closing div tag in your html page. (In ie anyways)

BAD

<div />

GOOD

<div></div>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文