0

特定のボタンがクリックされるたびに jQuery.post() を実行します。

function createNewImage () {
    jQuery.post("create/new/image.php", {some:params}, function (data) {
        loadImageSelector(data);
    }, "json");
}

create/new/image.php正常に実行され、サーバーが新しく作成されたデータベース行にイメージを受け入れて添付する準備ができたら、次の jQuery UI ダイアログ モーダルを開きます。

function loadImageSelector(data) {
    jQuery('<iframe src="script.php?id=' + data.param + '" /></iframe>').dialog({
        modal: true,
        width: 500,
        height: 400,
        resizable: false,
        title: "Upload an Image"
    });
}

問題は、IE8 で 2 つのダイアログ ポップアップが表示されることです。1 には完全なコンテンツが含まれており、script.php正しいように見えますが、この上に別のダイアログがあり、ヘッダー (「画像のアップロード」) と閉じるボタンのみがあり、コンテンツ (iframe) はありません。この動作は、IE9/Chrome/Firefox では発生していません。

4

1 に答える 1

0

This is kind of interesting. The code above is closing 2 iframes and IE8 is somehow reacting and creating 2 modals.

The first tag closes itself via /> but then includes another </iframe> tag afterwards. This was accidental, but I find it interesting that it responds like this.

Anyways, ensuring that the markup exists as it should (<iframe ...></iframe>) fixed the problem.

于 2012-06-11T23:02:04.540 に答える