Как я могу изменить состояние aria-selected = "false"
на aria-selected = "true"
с помощью jQuery?
Вот как я пытался это сделать:
$('element aria-selected').html(true)
$('element aria-selected').text(true)
$('element aria-selected').val(true)
$('element').attr('aria-selected', 'true').prop('selected', true)
$('element').attr('aria-selected', 'true')
$('element').prop('selected', true)
$('element').attr('aria-selected',true);
Это решит вашу цель
Только prop()
или attr()
могут установить атрибут aria-selected
на true
Правильный код:
$('element').prop('aria-selected', true);
или
$('element').attr('aria-selected', true);
Более подробная информация о каждом объекте:
Если элемент является контейнером, например div
, p
, h1
, b
, a
и т. д., Вам необходимо использовать html()
Метод html () устанавливает или возвращает содержимое (innerHTML) выбранных элементов.
$('element aria-selected').html(true)
Так что html()
здесь работать не будет.
Если элемент является контейнером, например div
, p
, h1
, b
, a
и т. д., Вам необходимо использовать text()
В отличие от метода .html (), .text () может использоваться как в документах XML, так и в HTML. Результатом метода .text () является строка, содержащая объединенный текст всех согласованных элементов.
$('element aria-selected').text(true)
Так что text()
здесь работать не будет.
Если элемент является полем ввода, например текст, скрыт и т. д., Вам необходимо использовать val()
$('element aria-selected').val(true)
Так что val()
здесь работать не будет.
Метод prop () устанавливает или возвращает свойства и значения выбранных элементов. Метод .prop () получает значение свойства только для первого элемента в согласованном наборе. Возвращает undefined для значения свойства, которое не было установлено.
$('element').attr('aria-selected', 'true').prop('selected', true)
$('element').prop('selected', true)
Метод attr () устанавливает или возвращает атрибуты и значения выбранных элементов.
$('element').attr('aria-selected', 'true')
Так что attr()
здесь будет работать.
Ванильный код JavaScript для решения:
var elem = document.querySelector("yourSelector");
elem.setAttribute('aria-selected', false); //If attribute is true, and false needed
elem.setAttribute('aria-selected', true); //If attribute is false, and true needed
Следующее решение будет работать с jQuery:
$('element').prop('ariaSelected', false);
$('element').prop('ariaSelected', true);