0

我有一个要打开的 kendoUI 窗口,该代码在 Firefox 中运行良好,但是为了在 IE8 中打开它,我需要单击该按钮两次。我一生都无法弄清楚为什么会这样。

这是按钮的代码(HTML):

<div id="CCA_UserAdministration_NewUserRequest">
    Content of the Window
</div>
<div id="CCA_UserAdministration_UserRequestBtn" onclick="javascript:CCA.UserAdministration.OpenUserRequestWindow();" class="k-button">New User Request</div>

(JS):

CCA.UserAdministration.OpenUserRequestWindow = function () {

        CCA.UserAdministration.UserRequestWin = $("#CCA_UserAdministration_NewUserRequest").kendoWindow({
            height: "200px",
            title: "New User Request Form",
            visible: false,

            width: "500px"
        }).data("kendoWindow");
        $('#CCA_UserAdministration_NewUserRequest').show();
     CCA.UserAdministration.UserRequestWin.center().open();     
};

我在 JS 文件中定义了一个命名空间:

var CCA = CCA || {};
CCA.UserAdministration = CCA.UserAdministration || {};

编辑

我还应该提到,在最初的第一次单击时,该图像隐藏在 IE8 中。不知道为什么。

<img src="/_layouts/images/fgimg.png" alt="" style="left:-0px !important;top:-128px !important;position:absolute;">

此外,如果我打开 modal = true,当黑屏出现时,它将不允许我第二次单击。

4

2 回答 2

0

我会尝试替换 CCA_UserAdministration_UserRequestBtn DIV 并使其成为锚点:

<a id="CCA_UserAdministration_UserRequestBtn" href="javascript:CCA.UserAdministration.OpenUserRequestWindow();" class="k-button">New User Request</a>

IE 可能在使用类似的语法时遇到困难: onclick="javascript:CCA.UserAdministration.OpenUserRequestWindow();",通常您在处理程序中没有该javascript:部分onclick,因此您可能也只想制作它onclick="CCA.UserAdministration.OpenUserRequestWindow()"。但是,当使用该href属性时,您需要该javascript:部分。

于 2012-12-28T15:39:22.527 回答
0

该问题与 jquery 版本 jQuery 1.8.+ 有关。您可以使用 jQuery 1.7.# 或使用 animation:false 禁用窗口动画来解决此问题。

CCA.UserAdministration.OpenUserRequestWindow = function () {

    CCA.UserAdministration.UserRequestWin = $("#CCA_UserAdministration_NewUserRequest").kendoWindow({
        height: "200px",
        title: "New User Request Form",
        visible: false,
        animation: false,
        width: "500px"
    }).data("kendoWindow");
    $('#CCA_UserAdministration_NewUserRequest').show();
 CCA.UserAdministration.UserRequestWin.center().open();   };
于 2012-12-28T18:54:38.663 回答