Javascript Подтвердите всплывающее окно Да, нет кнопки вместо OK и Отмена

Javascript Подтвердите всплывающее окно, я хочу показать "Да", "Нет", а не "ОК" и "Отмена".

Я использовал этот код vbscript:

<script language="javascript">
    function window.confirm(str) {
        execScript('n = msgbox("' + str + '","4132")', "vbscript");
        return (n == 6);
    }
</script>

это работает только в IE, In FF и Chrome, это не работает.

Есть ли какой-нибудь рабочий способ для этого в Javascript?

Я также хочу изменить название всплывающего окна, как в IE "Windows Internet Explorer", я хочу показать здесь свое собственное имя приложения.

Ответ 1

К сожалению, не существует поддержки кросс-браузера для открытия диалогового окна подтверждения, которое не является по умолчанию "ОК/Отмена". В предлагаемом решении используется VBScript, который доступен только в IE.

Я бы предложил использовать Javascript-библиотеку, которая может строить диалоговое окно на основе DOM. Попробуйте JQuery UI: http://jqueryui.com/

Ответ 2

Единственный способ сделать это в кросс-браузерном режиме - использовать фреймворк, такой как jQuery UI, и создать настраиваемый диалог:

jquery Dialog

Это не работает точно так же, как встроенное всплывающее окно подтверждения, но вы должны быть способны сделать так, как хотите.

Ответ 3

Вы также можете использовать http://projectshadowlight.org/jquery-easy-confirm-dialog/. Он очень прост и удобен в использовании. Просто включите общую библиотеку jquery и еще один файл:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js"></script>
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.1/themes/blitzer/jquery-ui.css" type="text/css" />
<script src="jquery.easy-confirm-dialog.js"></script>

Ответ 4

Вы не можете сделать этот кросс-браузер с помощью функции confirm() или аналогичного. Я настоятельно рекомендую вам использовать что-то вроде jQuery UI dialog для создания диалогового окна HTML.

Ответ 5

Рекомендуемая (но небольшая и простая) библиотека, которую вы можете использовать, это JSDialog: js.plus/products/jsdialog

Вот пример создания диалога с кнопками "Да" и "Нет":

JSDialog.showConfirmDialog(
    "Save document before it will be closed?\nIf you press `No` all unsaved changes will be lost.",
    function(result) {
        // check result here
    },
    "warning",
    "yes|no|cancel"
);

демонстрационный снимок JS Dialog

Ответ 6

Посмотрите http://bootboxjs.com/

Очень проста в использовании:

 bootbox.confirm("Are you sure?", function(result) {
  Example.show("Confirm result: "+result);
});

Ответ 7

1) Вы можете загружать и загружать файлы ниже на своем сайте

<link href="/Style%20Library/css/smoothness/jquery.alerts.css" type="text/css" rel="stylesheet"/> 

2) после этого вы можете напрямую использовать код ниже

$. alerts.okButton = "yes"; $.alerts.cancelButton = "no";

в функции document.ready.

Попробуйте, он будет работать.

Спасибо

Ответ 8

Вы можете использовать подсластитель.

импортировать в ваш HTML:

<script src="https://cdn.jsdelivr.net/npm/[email protected]"></script>

и включить оповещение:

Swal.fire({
  title: 'Do you want to do this?',
  text: "You won't be able to revert this!",
  type: 'warning',
  showCancelButton: true,
  confirmButtonColor: '#3085d6',
  cancelButtonColor: '#d33',
  confirmButtonText: 'Yes, Do this!',
  cancelButtonText: 'No'
}).then((result) => {
  if (result.value) {
    Swal.fire(
      'Done!',
      'This has been done.',
      'success'
    )
  }
})

для получения дополнительной информации посетите сайт оповещений Sweetalert

Ответ 9

очень конкретный ответ на этот вопрос подтверждает диалог Функция Js:

confirm('Do you really want to do so');

Он отображает диалоговое окно с кнопками ok cancel, чтобы заменить эту кнопку да, нет, это не так просто, потому что вам нужно написать функцию jQuery.