2009-05-05 8 views
97

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

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

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

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

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

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

+0

Я сделал диалог «да нет», его очень легко настроить: https://github.com/stein189/YesNoDialog. Вы можете попробовать это, если будете nt до – Szenis

ответ

83

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

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

17

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

jquery Dialog

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

+3

Для ясности это не единственный способ - вы можете написать свой собственный в Javascript, конечно, не то, что это было бы правильно. – LeonardChallis

+1

@ LeonardChallis, но в том числе большая библиотека только для модальной функциональности div лучше? Я так не думаю –

4

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

6

Вы также можете использовать 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> 
-9

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

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

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

+1

Он хотел Да и Нет. Это подтверждение дает только одобрение или отмену. Вот почему это проголосовали. –

2

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

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

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

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

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

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

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

в документе. уже функция.

Пожалуйста, попробуйте, это сработает.

Благодаря

3

Отличаемый (но маленький и простой) библиотеки вы можете использовать это 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 demo screenshot

+0

Эй, где ты это нагрузишь? – Gary