У меня есть набор переключателей, все в стиле с jQuery UI .button()
.
Я хочу изменить их состояние. Однако, когда я делаю это программно на событие изменения контейнера с помощью:
$("#myradio [value=1]").attr("checked", false);
$("#myradio [value=2]").attr("checked", true);
Значения изменены правильно, но стиль пользовательского интерфейса по-прежнему показывает непроверенную радиокнопку с проверенным стилем, а проверенный по-прежнему выглядит непроверенным.
Я просмотрел документацию jQuery UI по методу button()
для переключателей, но нет ничего о том, как изменить состояние и обновить стиль пользовательского интерфейса.
Вкратце проблема состоит в том, что вызов кода $("selector").button("disable");
не меняет активного состояния кнопки - базовый переключатель правильно проверен, но активное состояние пользовательского интерфейса не изменяется. Итак, я получаю кнопку greyed out, которая выглядит так, как будто она все еще проверена, и настоящая выбранная кнопка не отображается.
Решение
$("selector").button("enable").button("refresh");