Как отключить кнопки, определенные в массиве кнопок - PullRequest
1 голос
/ 21 октября 2011

Спасибо всем за предыдущие справочные сообщения. Ну, я вроде работаю над этим кодом, и я застрял в этой точке, не зная, как пройти через это. Надеюсь, вы можете помочь.

Вот проблема, у меня есть диалоговое окно, которое открывается с некоторыми текстовыми полями в нем, и в конце есть 2 кнопки ОК и Отмена , что я хочу сделать, это , проверьте логическое значение для разрешений, если в случае его false отключите кнопку OK , вот как определяются кнопки

dialogBox.dialog ({
    modal:true,
    width: 600,
    height: 600,
    buttons: {
        OK : function () {
            // Some code here
            },
        Cancel : function () {
            // Some code here
            }
    }
    // Some more code below but irrelevant to problem
});

Теперь мне нужно отключить кнопку OK с помощью jQuery, как я могу это сделать, пожалуйста, помогите

Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 21 октября 2011

Кнопки диалога, созданные пользовательским интерфейсом jQuery, расположены в элементе <div>, который предоставляет класс ui-dialog-buttonpane.

Поскольку кнопка OK является первой в наборе, вы можете использовать: первый селектор, соответствующий ему:

dialogBox.dialog("widget")
         .find(".ui-dialog-buttonpane button:first")
         .prop("disabled", true);
0 голосов
/ 21 октября 2011

Вы можете установить кнопки в виде массива (что позволяет устанавливать отключенный атрибут. И затем переустанавливать массив кнопок при каждом изменении логического значения (если вы можете каким-либо образом его контролировать).

dialogBox.dialog ({
modal:true,
width: 600,
height: 600,
buttons: [
{
    text: "Ok",
    disabled: "false",
    click: function() { // Some code here }
},
{
    text: "Cancel",
    click: function() { // Some code here }
}    
]
// Some more code below but irrelevant to problem
});

Затем, когда логическое значение изменяется на false, выполните:

$( "#dialogBox" ).dialog( "option", "buttons", [
{
    text: "Ok",
    disabled: "true",
    click: function() { // Some code here }
},
{
    text: "Cancel",
    click: function() { // Some code here }
}    
]

Надеюсь, это помогло.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...