1

私は道場1.4で立ち往生しています。
window.confirm() を同期 (ブロック) ダイアログに置き換える必要があります。
理由 : ボタンを OK/CANCEL ではなく YES/NO にしたい。
このダイアログはアプリの複数の部分から呼び出されるため、適切なクリーンアップが必要です。この機能を持つ道場ライブラリはありますか?
.js ファイルまたは html/jsp ファイル内からこの新しいダイアログを含めることができるように、すべての動的コードを使用したいと思いますが、動作するものは高く評価されます。

4

1 に答える 1

1

同期させることはできませんが、フォームが@FakeRainBrigandによって、event.preventDefault()または言及されたとおりに送信されないようにすることはできます。onsubmit="return false;"

これが実際の例です: http://jsfiddle.net/phusick/73PuE/

ここに画像の説明を入力

上記のコメントで述べた確認ダイアログを採用しています。これは Dojo 1.8 で書かれていますが、1.4 とほぼ同じである必要がありdojo.connetますdojo/on

var form1 = dom.byId("form1");

on(form1, "submit", function(event) {
    event.preventDefault();
    var form = event.target;
    MessageBox.confirm({ message: "Submit form?" }).then(function() {
        // submit the form upon a click on `Yes`
        form.submit();
    });        
});

プレーンなバニラ JavaScript で同じことを実現できます。

function confirmHandler(event) {
    event.preventDefault();

    var form = event.target;
    // ask for a confirmation and if confirmed invoke:
    // form.submit();
}

フォームにハンドラーを登録します。

<form onsubmit="confirmHandler(event);">
于 2012-11-25T11:16:25.643 に答える