0

jQuery ダイアログを使用しており、ダイアログ フレームの右上隅にある閉じるボタンに機能を追加したいと考えています。ダイアログに含まれるキャンセル ボタンに影響を与えることなく、ダイアログに閉じる機能を追加するだけでこれを達成できますか? つまり、キャンセル ボタンは明らかにダイアログを閉じて独自の機能を実行しますが、ダイアログ フレームの閉じるボタンは別のことをする必要があります。うまくいけば、私はそれを十分に明確に説明しました。

4

2 に答える 2

1

buttonsダイアログ内でオプションを使用していて、そのうちの 1 つが である場合はCancel、はい。Cancel明らかに、ボタン用に独自の関数を作成してから、closeイベントを使用して別の関数を作成できます。安全のために、おそらくボタンpreventDefault()の関数に含めたいと思うでしょう。Cancel

    $('#dialog').dialog({
        buttons: {
               "Ok" : function() {
                       //perform whatever
               },
               "Cancel" : function(e) {
                       e.preventDefault();
                       //perform whatever
               },
        close: function() {
               // perform special CLOSE function
        }
});
于 2013-07-10T20:29:01.807 に答える
0

実際、私はこれを達成するために以下の方法を使用しました。うまく機能しているように見えるので、この方法に欠点があるかどうかはわかりません。コードは次のとおりです。

 $("#dialog").dialog({
   ...dialog code goes here...
  }).bind('dialogclose', function(event, ui) {
    ... dialog close code goes here...
  });

上記の答えは、より明確でクリーンな実装であるため、より優れていると思います。

于 2013-07-11T16:09:09.180 に答える