Ответ 1
button.removeAttr('disabled').removeClass( 'ui-state-disabled' );
Я могу отключить его, используя это:
button.attr('disabled', 'disabled' ).addClass( 'ui-state-disabled' );
Но как мне его снова включить? Когда я использую это:
button.attr('enabled', 'enabled' ).addClass( 'ui-state-enabled' );
Это не работает.
button.removeAttr('disabled').removeClass( 'ui-state-disabled' );
Пробовал все ответы здесь и ничего не работал для меня.
Проблема в том, что у меня есть html:
<input type="submit" value="Save" id="saveButton" disabled="disabled" />
Затем я вызываю globaly:
$("button, input:submit, input:button").button();
После этого кнопка получает атрибут aria-disabled = true.
Ни один из следующих вариантов не позволит отправить:
$("#saveButton").attr('disabled',false);
$("#saveButton").removeAttr('disabled');
$("#saveButton").prop('disabled',false);
$("#saveButton").attr('aria-disabled',false);
$("#saveButton").removeClass('ui-state-disabled' );
Единственное рабочее решение в этом случае:
$("#saveButton").button( "enable" );
jQuery UI Docs: Button Widget - включить()
Чтобы снова отключить кнопку:
$("#saveButton").button( "disable" );
jQuery UI Docs: Кнопка Виджет - отключить()
С помощью jquery вы можете использовать removeAttr и removeClass, чтобы избавиться от вашего отключенного атрибута/класса:
button.removeAttr('disabled').removeClass('ui-state-disabled');
Просто удалите отключенный атрибут.
http://api.jquery.com/removeAttr/
button.removeAttr("disabled")
Я думаю, что это то, что вы ищете:
button.removeAttr("disabled");