21

如何在 JavaScript 中使用自定义选项编写确认对话框?

除了“Ok”和“Cancel”之外,我还想有例如“This”、“That”和“Other”。

4

4 回答 4

21

简而言之,你不能。

您可能需要考虑使用类似jQuery UI 对话框的东西来代替。

于 2009-11-25T21:24:47.943 回答
4

您可以使用以下方法向用户询问答案:

var userChoice = prompt("Question");

您可以循环该句子,直到用户在有效答案中输入答案。

于 2013-06-07T21:19:55.007 回答
2

你不能。使用一些 javascript UI(jQuery UI、YUI、Mootools)库并模仿您需要的对话框。

于 2009-11-25T22:07:27.367 回答
1
// 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;
                }
            }
        );
    });
});
于 2015-08-13T07:25:58.407 回答