Передайте переменную в jquery функцию открытия модального диалога - PullRequest
0 голосов
/ 24 февраля 2020

Я пытаюсь показать модальное диалоговое окно jquery при ошибке двух методов выборки. Модальные диалоги такие же, за исключением тела в открытой функции. Я хотел бы создать только одну функцию и передать основной текст в качестве параметров из методов выборки. Как я могу сделать то же самое?

const fetchCallOne = () => {
  try {
  } catch(err) {
    alertForDialogFetchCallOne.dialog('open');
  }
}

const fetchCallTwo = () => {
  try {
  } catch(err) {
    alertForDialogFetchCallTwo.dialog('open');
  }
}

const alertForDialogFetchCallTOne = $('<div></div>').dialog({
  title: 'Note',
  modal: true,
  autoOpen: false,
  open: function() {
    $(this).html('Fetch Call One Error');
  },
  buttons: {
    Ok: function() {
      $(this).dialog('close');
    },
  },
});

const alertForDialogFetchCallTwo = $('<div></div>').dialog({
  title: 'Note',
  modal: true,
  autoOpen: false,
  open: function() {
    $(this).html('Fetch Call Two Error');
  },
  buttons: {
    Ok: function() {
      $(this).dialog('close');
    },
  },
});

Как видно выше, единственная разница - body из open. Итак, как я могу сделать только одну функцию и вызвать ее с параметрами?

Например:

alertForDialogAnyFetchCall.dialog('open').body('Fetch Call One Error');
alertForDialogAnyFetchCall.dialog('open').body('Fetch Call Two Error');

1 Ответ

0 голосов
/ 24 февраля 2020

Надеюсь, это то, что вы ищете

function message(type){
alert(type);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button onClick=message("open")> Click me </button>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...