Как я могу заполнить элемент select из результатов поиска автозаполнения JQuery UI?
Я довольно новичок в JQuery и Javascript...
В настоящее время я использую следующую технику или код для заполнения полей ввода из набора автозаполнения результатов поиска интерфейса пользователя JQuery...
var PopulateFields = function(event, ui){
$('#Custid').val(ui.item.Custid);
$('#Alpha1').val(ui.item.Alpha1);
$('#Alpha2').val(ui.item.Alpha2);
$('#CustName').val(ui.item.CustName);
$('#Address1').val(ui.item.Address1);
$('#Address2').val(ui.item.Address2);
$('#City').val(ui.item.City);
$('#State').val(ui.item.State);
}
$( "#search-by-custname" ).autocomplete({
source: "cust_search_by_name.php",
minLength: 4,
select: PopulateFields
});
Сценарий php извлекает информацию из базы данных и возвращает ее обратно через JSON в следующем формате:
[{"label":"A Tire Store","value":"A Tire Store","Custid":"10000","Alpha1":"COD123456","Alpha2":"TIRE","CustName":"A Tire Store","Address1":"123 Cherry Lane","Address2":"","City":"City of Bla","State":"FL","Zip":"555555"}]
Это прекрасно работает с полями ввода.
Однако, если бы я хотел сделать State полем выбора, как бы я заполнил это поле выбора существующим значением в записи клиента?
Или это невозможно?
Я пытаюсь создать форму ввода данных, и одна из функций, которые я хочу иметь, заключается в том, что, когда они ищут запись клиента для редактирования, ее поиск заполняет все поля формы, а затем они могут редактировать их.
Я думал, что поле выбора для State сохранит мне логику проверки данных...
Моя другая мысль состояла в том, чтобы использовать поле ввода только для чтения для State (потому что я знаю, что автозаполнение пользовательского интерфейса JQuery заполняет это), а затем создать поле выбора "State Selector", которое будет заполнять поле "State" ввода только для чтения для повторного ввода. представление.
Мысли?
1 ответ
Вы говорите, что пробовали это, и это не удалось? Потому что, если у вас есть выбор, похожий на
<select id="State">
<option>AK</option>
<option>FL</option>
<option>WY</option>
</select>
потом звоню $("#State").val("FL")
буду работать.