У меня другая ситуация, когда выпадающий список значений являются уже жестко закодированный. Есть только 12 районов, поэтому пользовательский интерфейс jQuery Autocomplete UI не заполняется кодом.
Решение намного проще. Поскольку мне приходилось пробираться через другие сообщения, где предполагалось, что контроль динамически загружается, не находил того, что мне было нужно, а затем, наконец, понял это.
Так где у вас есть HTML, как показано ниже, настройка выбранного индекса устанавливается так, обратите внимание на -input часть, которая в дополнение к ниспадающего ID:
$('#project-locationSearch-dist-input').val('1');
<label id="lblDistDDL" for="project-locationSearch-input-dist" title="Select a district to populate SPNs and PIDs or enter a known SPN or PID." class="control-label">District</label>
<select id="project-locationSearch-dist" data-tabindex="1">
<option id="optDistrictOne" value="01">1</option>
<option id="optDistrictTwo" value="02">2</option>
<option id="optDistrictThree" value="03">3</option>
<option id="optDistrictFour" value="04">4</option>
<option id="optDistrictFive" value="05">5</option>
<option id="optDistrictSix" value="06">6</option>
<option id="optDistrictSeven" value="07">7</option>
<option id="optDistrictEight" value="08">8</option>
<option id="optDistrictNine" value="09">9</option>
<option id="optDistrictTen" value="10">10</option>
<option id="optDistrictEleven" value="11">11</option>
<option id="optDistrictTwelve" value="12">12</option>
</select>
что-то еще выяснял о Управление автозаполнением - это то, как правильно отключить/удалить его.У нас есть 3 управления работают вместе, 2 из них взаимоисключающие:
//SPN
spnDDL.combobox({
select: function (event, ui) {
var spnVal = spnDDL.val();
//fire search event
$('#project-locationSearch-pid-input').val('');
$('#project-locationSearch-pid-input').prop('disabled', true);
pidDDL.empty(); //empty the pid list
}
});
//get the labels so we have their tool tips to hand.
//this way we don't set id values on each label
spnDDL.siblings('label').tooltip();
//PID
pidDDL.combobox({
select: function (event, ui) {
var pidVal = pidDDL.val();
//fire search event
$('#project-locationSearch-spn-input').val('');
$('#project-locationSearch-spn-input').prop('disabled', true);
spnDDL.empty(); //empty the spn list
}
});
Некоторые из этого выходит за рамки поста, и я не знаю, куда поместить его точно. Поскольку это очень полезно и потребовалось некоторое время, чтобы разобраться, оно разделяется.
Und Также ... чтобы включить такой элемент управления, это (отключено, false) и NOT (включено, правда), что также потребовалось немного времени для выяснения. :)
Единственная вещь, чтобы отметить, многое в дополнение к сообщению, является:
/*
Note, when working with the jQuery Autocomplete UI control,
the xxx-input control is a text input created at the time a selection
from the drop down is picked. Thus, it's created at that point in time
and its value must be picked fresh. Can't be put into a var and re-used
like the drop down list part of the UI control. So you get spnDDL.empty()
where spnDDL is a var created like var spnDDL = $('#spnDDL); But you can't
do this with the input part of the control. Winded explanation, yes. That's how
I have to do my notes or 6 months from now I won't know what a short hand note means
at all. :)
*/
//district
$('#project-locationSearch-dist').combobox({
select: function (event, ui) {
//enable spn and pid drop downs
$('#project-locationSearch-pid-input').prop('disabled', false);
$('#project-locationSearch-spn-input').prop('disabled', false);
//clear them of old values
pidDDL.empty();
spnDDL.empty();
//get new values
GetSPNsByDistrict(districtDDL.val());
GetPIDsByDistrict(districtDDL.val());
}
});
Все совместно, потому что это занимает слишком много времени, чтобы изучить эти вещи на лету. Надеюсь, это полезно.
Я думал, что это было так просто, но не показалось работать. Наверное, это время отладки. –
Возможный дубликат [Выбор опции по текстовому контенту с помощью jQuery] (http://stackoverflow.com/questions/1009740/selecting-option-by-text-content-with-jquery) – Christopher
Ваш заголовок немного вводит в заблуждение. Вы не выбираете выпадающий список, вы выбираете опцию в раскрывающемся списке ... вот почему есть 7 ответов, которые мне совсем не помогают ... – user1566694