#javascript #jquery #drop-down-menu
#javascript #jquery #выпадающее меню
Вопрос:
У меня есть выпадающий список в jquery. Я заполняю этот выпадающий список с помощью массива. Я хочу установить одно из значений в качестве первого в списке из массива значений. Допустим, у меня есть ‘a’, ‘b’, ‘c’ в массиве, и я хочу установить ‘b’ в качестве первого в массиве.
Заранее большое спасибо..
Комментарии:
1.
$('select option:eq(1)').prop('selected', true);
Ответ №1:
$('select option:eq(1)').prop('selected', true);
где 1 — это индекс ‘b’ внутри вашего массива.
Комментарии:
1. Я попробовал это, и это сработало.. $(«#selectControl»).attr(‘SelectedIndex’,indexVal); Большое спасибо всем за быстрые ответы….
2. Ах, мне нравится это решение еще больше 🙂
3. $(«#selectControl»).attr(‘SelectedIndex’, indexVal);
Ответ №2:
Если вы хотите установить один параметр как «ВЫБРАННЫЙ, вам просто нужно добавить его в html следующим образом:
<option value='your' SELECTED>Name</option>
Это сделает этот параметр первым в списке или выбранным.
В противном случае параметры будут следовать в том порядке, в котором вы их указали
<option value='your1'>Name1</option>
<option value='your2'>Name1</option>
в этом случае Name1 будет отображаться перед Name2
Ответ №3:
установите свойство selected="selected"
в <option>
теге для этого конкретного значения
Ответ №4:
Вы можете изменить порядок массива, используя комбинацию array.splice() и array.concat() . Затем выполните привязку как обычно. например
var foo = ['a', 'b', 'c'];
var bar = foo.splice(1,1); // the first arg is the index of the item to remove
var baz = bar.concat(foo); // baz contains the new array with the 'b' value in the first spot
Ответ №5:
Решение Джона Стикса хорошее.
Если вы хотите сделать это с текстом, а не с индексом, вы могли бы сделать:
//BUILD ARRAY
var fruits = ["Banana", "Orange", "Apple", "Mango"];
//BUILD DROPDOWN
var firstItem = "Mango";
var buildHTML = "";
$.each( fruits, function(intIndex, objValue){
if(objValue != firstItem) {
buildHTML = "<option>" objValue "</option>";
} else {
buildHTML = "<option>" objValue "</option>" buildHTML;
}
});
$("#dropdownbox").append(buildHTML);
И иметь пустое поле выбора
<select id="dropdownbox">
</select>
Ответ №6:
Я попробовал и нашел ответ:
$(«#selectControl»).attr(‘SelectedIndex’, indexVal);