opções personalizadas no diálogo de confirmação javascript
-
05-07-2019 - |
Pergunta
Como escrever um diálogo de confirmação em javascript com opções personalizadas?
Em vez de apenas "OK" e "Cancelar", eu gostaria de ter, por exemplo, "Este" "Isso" e "Outros".
Solução
Em suma, você não pode.
Você pode querer considerar olhando para usar algo como um jQuery UI diálogo .
Outras dicas
Você poderia perguntar ao usuário uma resposta usando:
var userChoice = prompt("Question");
Você poderia loop essa frase até que o usuário entra uma resposta dentro dos válidos.
Você não pode. Use algum UI javascript (jQuery UI, YUI, Mootools) biblioteca e de diálogo um mímico que você precisa.
// custom Confirm builder
function OnConfirm(text, func) {
var _confirm = $('<div/>').addClass('confirm');
_confirm.append($('<h2/>').text(text));
_confirm.append('<br/><br/>');
var _btnCancel = $('<input/>').attr('type', 'button').val('cancel')
.bind('click', function () {
$(this).parent('.confirm').hide();
func(false);
});
var _btnApply = $('<input/>').attr('type', 'button').val('OK')
.bind('click', function () {
$(this).parent('.confirm').hide();
func(true);
});
_confirm.append(_btnCancel);
_confirm.append(_btnApply);
$('body').append(_confirm);
}
$(function () { // documen.loaded
$('#testLink').click(function (e) {
e.preventDefault(); ;
var _href = $(this).attr('href');
var _title = $(this).attr('title');
// call custom confirm function with callback function
OnConfirm(_title, function (_isContinue) {
if (_isContinue) {
location.href = _href;
}
}
);
});
});
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow