Pregunta

¿Cómo escribir un diálogo de confirmación en javascript con opciones personalizadas?

En lugar de solo " Ok " y " Cancelar " ;, me gustaría tener, por ejemplo, " Este " " Eso " y " Otro " ;.

¿Fue útil?

Solución

En resumen, no puedes.

Es posible que desee considerar usar algo como un cuadro de diálogo de la interfaz de usuario jQuery en su lugar.

Otros consejos

Puede pedirle al usuario una respuesta usando:

var userChoice = prompt("Question");

Puede hacer un bucle de esa oración hasta que el usuario ingrese una respuesta dentro de las válidas.

No puedes. Use alguna biblioteca de IU de javascript (jQuery UI, YUI, Mootools) e imite el diálogo que necesita.

// 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 bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top