jqgrid отключить кнопку HTML в событии loadComplete

У меня есть jqgrid на моей странице, и вне сетки есть кнопка, подобная следующей:

<input type="button" id="mybutton" value="click here" />

Когда документ готов, я отключаю и скрываю кнопку со следующим кодом:

$(document).ready(function () {
    var btn = $('#mybutton');
    btn.prop('disabled', true);
    btn.hide();
    ...
    setupGrid();
});

setupGrid() это функция, которая выполняет настройку jqgrid и имеет этот код в loadComplete событие

[...]
loadComplete: function() {
    //do some logic here and then...
    var btn = $('#mybutton');
    if ( mycustomlogic ) {
        btn.prop('disabled', false);
        btn.show();        
    }
}

но, к сожалению, после этого кнопка снова не активируется. Это правильно показано, когда mycustomlogic оценить как истинное, но оно остается в отключенном состоянии. Я также пытался использовать btn.attr('disabled', 'disabled') а также btn.removeAttr('disabled') вместо .prop() без удачи

Любое предложение?

1 ответ

Решение

При использовании кнопок пользовательского интерфейса jQuery лучше всего использовать методы API для включения / выключения кнопок http://api.jqueryui.com/button/

$(element).button('disable/enable')

Таким образом, он обрабатывает все другие изменения для вас, кроме только отключенного свойства

Другие вопросы по тегам