как сделать индекс выбранным и показать в выпадающем списке, я хочу сделать 2-й индекс выбранным и показать в раскрывающемся списке, как я это делаю? вот мой код:
{% for items in itemdata %}
{{items.invoiceitemsid}}
{% if items.invoiceitemsid =='2' %}
$('.items').find('option').remove().end();
$('.items').append("<option value='1'>{{item1}}</option>").val('1');
$('.items').append("<option value='2'>{{item2}}</option>").val('2');
$('.items').append("<option value='3'>{{item3}}</option>").val('3');
$(".items option[value='2']").prop('selected', true);
{% elseif items.invoiceitemsid =='3' %}
$('.items').find('option').remove().end();
$('.items').append("<option value='1'>{{item1}}</option>").val('1');
$('.items').append("<option value='2'>{{item2}}</option>").val('2');
$('.items').append("<option value='3'>{{item3}}</option>").val('3');
$(".items option[value='3']").prop('selected', true);
{% else %}
$('.items').find('option').remove().end();
$('.items').append("<option value='1'>{{item1}}</option>").val('1');
$('.items').append("<option value='2'>{{item2}}</option>").val('2');
$('.items').append("<option value='3'>{{item3}}</option>").val('3');
$(".items option[value='1']").prop('selected', true);
{% endif %}
{% endfor %}
и вот мой html-код:
<select class="items" name="items{{loop.index0}}" style="width:127px; float:left;" id="items{{loop.index0}}"><option value="1" selected="selected" disabled="disabled"></option></select>
я хочу показать выбранную опцию в этом поле со списком, у моих элементов данных есть массив чисел, например 1,2,3, если item.invoiceid = 1 значение параметра one show и если items.invoiceid = 2 значение параметра 2 показано как выбрано
Я хочу сделать 2-й индекс в качестве выбранного значения, как я это делаю?
Чтобы выбрать 2nd
вариант (2-й индекс), вы можете попробовать это
$('.items option:eq(1)').prop('selected', 1);
Или попробуйте
$('.items')[0].selectedIndex = 1;
попробуй что-нибудь вроде этого
$('.items').get(0).selectedIndex = 2;
Если .items
- это ваш <select>
: $('.items').val('2')
.items
$('.items').val('2')
после добавления всех параметров.
В противном случае вы можете вызвать .prop('selected', true)
в <option>
.
Вы можете сделать это:
$(".items option[value='2']").prop('selected', true);
$('.items').append("<option value='1'>item1</option>").val('1');
$('.items').append("<option value='2'>item2</option>").val('2');
$('.items').append("<option value='3'>item3</option>").val('3');
$('select.items>option:eq(1)').attr('selected', true);
Вот ДЕМО
Попробуй это,
$('.items').find('option').remove().end();
$('.items').append("<option value='1'>{{item1}}</option>").val('1');
$('.items').append("<option value='2' selected="selected">{{item2}}</option>").val('2');
$('.items').append("<option value='3'>{{item3}}</option>").val('3');
.val()
в конце каждой строки является избыточным, поскольку вы уже добавили атрибут в строку HTML внутриappend
.