Как закрыть диалоговое окно jquery после одного клика - PullRequest
0 голосов
/ 07 марта 2019

Мое диалоговое окно закрывается только после двух нажатий, а не одного.Я не уверен, почему он не закроется при первом нажатии кнопки.Должно ли диалоговое окно быть скрытым?Я попробовал dialog.dialog.hide ();сразу после закрытия, но это не дает мне удачи.Это то, что у меня есть для моего диалога.

var dialog = $('<p>Cannot post. </p>').dialog({
  height: 150,
  width: 300,
  buttons: {
    "Ok": function(event) {
      event.preventDefault();
      dialog.dialog('close');
      $(this).display = 'none';
    }
  }
});

1 Ответ

0 голосов
/ 08 марта 2019

Рассмотрим следующее: https://jsfiddle.net/Twisty/eo4z5gaj/

JavaScript

$(function() {
  var dialog = $('<p>Cannot post. </p>').dialog({
    height: 150,
    width: 300,
    buttons: {
      "Ok": function(event) {
        $(this).dialog('close');
      }
    }
  });
});

Лучше сослаться $(this) на .dialog(). По сути, они одинаковы.

Если этот код все еще требует два нажатия кнопки «ОК», то вам следует взглянуть на свой браузер или консоль. Приведенный выше код работает одним щелчком мыши в FireFox.

Вы также можете рассмотреть: https://jsfiddle.net/Twisty/eo4z5gaj/8/

JavaScript

$(function() {
  var dialog = $('<div>', {
    title: "Error"
  }).html("<p>Cannot Post.</p>").dialog({
    height: 160,
    width: 300,
    buttons: {
      "Ok": function(event) {
        $(this).dialog('close');
      }
    }
  });
});

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...