Можно ли изменить названия всех кнопок диалогового окна интерфейса пользователя JQuery (Да / Нет / Отмена)? - PullRequest
3 голосов
/ 23 ноября 2011

Можно ли изменить заголовок каждой кнопки «Да», «Нет» и «Отмена», или я должен сделать это для каждого диалога отдельно?

Более подробная информация по запросу:

В типичном диалоговом окне JQuery диалоговые кнопки определяются следующим образом:

buttons: {
   Yes: function () {
   },
   No: function () {
   }
}

Я ищу способ изменить текст кнопки «Да», «Нет» и «Отмена», не изменяя каждый диалог.

Так что, если, например, диалог определен, как указано выше, кнопка «Да» должна автоматически иметь правильный локализованный заголовок.

Ответы [ 2 ]

4 голосов
/ 23 ноября 2011

Я предполагаю, что мы говорим о диалоге jQuery UI. Я бы предложил написать плагин, который оборачивает плагин диалога и пропускает все опции, кроме заголовка кнопок «Да», «Нет» или «Отмена». Это вы можете установить в своем плагине оболочки.

Это довольно просто сделать. Вот один из способов начать:

(function( $ ){

    $.fn.myDialog = function( options ) {  

        return this.each(function() {

    var settings = $.extend( {
          'buttons'         : buttons: [
        {
            text: "My Yes",
            click: options.myOkCallback
        },
        {
            text: "My Cancel",
            click: options.myCancelCallback
        },
        {
            text: "My No",
            click: options.myNoCallback
        }
    ]

    }, options);

    $(this).dialog(settings);

});

  };
})( jQuery );
0 голосов
/ 23 ноября 2011
$(":button[value=Yes]").val("Evet");

он переведет все кнопки со значением "Да" в Tukish да "Evet".
Пример JSFiddle можно найти здесь

...