0

開こうとしている kendoUI ウィンドウがあります。コードは Firefox で正常に動作しますが、IE8 で開くには、ボタンを 2 回クリックする必要があります。私は一生、これがなぜなのか理解できません。

ボタンのコード (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 にすると、暗い画面が表示されるので、2 回目はクリックできなくなります。

4

2 に答える 2

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 に答える
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:部分がないため、単にそれを作成することもできます。ただし、属性を使用する場合は、パーツが必要です。onclickonclick="CCA.UserAdministration.OpenUserRequestWindow()"hrefjavascript:

于 2012-12-28T15:39:22.527 に答える