1

私のjQuery UIダイアログでは、閉じるボタンをクリックすると、次回ダイアログが表示されたときに、キャンセルボタンを2回クリックして閉じる必要があります。

http://jsfiddle.net/AvF8V/6/

(X)閉じるボタンをクリックしない場合、次のコード行は正常に機能します。

 jQuery("#message1").remove();

閉じるボタンをクリックすると、2回クリックしたときにのみキャンセルボタンが機能します。

このシナリオの理由は何ですか?どうすれば回避できますか?

4

1 に答える 1

1

以下の JavaScript は、同じ ID を持つ別の div が既に存在する場合でも、div "#message1" を作成します。

Alert('dialog_message1','this is a test');

デフォルトでは、jQuery ダイアログの閉じるボタンは html からコンテナを削除しません。したがって、同じ ID ('#message1') を持つ 2 つ以上の divjQuery("#message1").remove();が存在し、最初の 1 つだけが削除されます。

あなたがすべき

  1. OR の作成時に、同じ ID を持つ別の要素が存在するかどうかを確認します
  2. $(this).dialog('destroy').remove()ダイアログを削除する場合に使用します。
于 2013-09-30T06:17:41.507 に答える