Сброс выбранного пункта select с помощью jQuery
Однажды потребовалось сбросить выбранный пункт у select с помощью jQuery. Другими словами необходимо выделить первый элемент у select.
Есть разница между атрибутами и свойствами компонентов. До JQuery версии 1.6. метод attr() в некоторых случаях получал значения свойств, вместо значения атрибута, что могло привести к непредсказуемым последствиям. В JQuery 1.6 метод prop() был вынесен отдельно, что позволило явно получать значение свойства, в то время как метод attr() возвращает только атрибуты.
Например свойства selectedIndex, tagName, nodeName, nodeType, ownerDocument, defaultChecked и defaultSelected нужно получать с помощью метода prop().
Пример на codepen
Это можно сделать следующим способом:
Способ для версий jQuery 1.6 и выше
123456
var $selectbox = $('#selectbox');
$('#reset').click(function() {
$selectbox.prop('selectedIndex', 0);
});
Способ для версий младше jQuery 1.6
123456
var $selectbox = $('#selectbox');
$('#reset').click(function() {
$selectbox.attr('selectedIndex',0);
});