web-dev-qa-db-ja.com

JavaScript確認ダイアログのカスタム選択

カスタム選択でJavaScriptで確認ダイアログを書く方法は?

「OK」「キャンセル」だけでなく、「これ」「あれ」「その他」などにしたいです。

20
TheOne

要するに、それはできません。

代わりに jQuery UI dialog のようなものを使用することを検討することを検討したい場合があります。

18

次のコマンドを使用して、ユーザーに回答を求めることができます。

var userChoice = Prompt("Question");

ユーザーが有効なものの中に回答を入力するまで、その文をループできます。

4
Isidro Moran

できません。いくつかのJavaScript UI(jQuery UI、YUI、Mootools)ライブラリを使用して、必要なダイアログを模倣します。

2
NilColor
// 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;
                }
            }
        );
    });
});
1
Alec Kobi