Не могли бы вы помочь мне? Я работаю в клиентском CRUD на PHP, JS и AJAX, но я застрял.
Моя проблема в форме редактирования клиента. Когда я нажимаю в редакторе клиента, все данные этого клиента загружаются в форму, кроме одного из двух селекторов выбора. У меня есть два выбора, один для городов (#idprovincia) и другой для зон (#idmunicipio). При нажатии на клиент редактирования, процедура должна быть:
1) Загрузить все города в #idprovincia selectpicker (работает нормально) 2) Загрузить все зоны выбранного города в #idmunicipio selectpicker (работает нормально) 3) Выбрать и показать выбранную зону клиента в #municipio selectpicker. Третий пункт не работает .. Я читал об этом, но я не могу найти правильное решение для меня, поэтому я был бы признателен за вашу помощь.
Я делюсь своим кодом для отображения данных клиента:
function mostrar(idcliente)
{
$.post("../ajax/clientes.php?op=mostrar",{idcliente : idcliente}, function(data, status)
{
data = JSON.parse(data);
mostrarform(true);
$("#idpago").val(data.idpago);
$('#idpago').selectpicker('refresh');
$("#idprovincia").val(data.idprovincia);
$('#idprovincia').selectpicker('refresh');
$("#idmunicipio").val(data.idmunicipio);
//$('#idmunicipio').selectpicker('refresh');
$("#idcliente").val(data.idcliente);
$("#tlfiscal").val(data.tlfiscal);
$("#nombre").val(data.nombre);
$("#zona").val(data.zona);
$("#telefono").val(data.telefono);
$("#movil").val(data.movil);
$("#fax").val(data.fax);
$("#contacto").val(data.contacto);
$("#domicilio1").val(data.domicilio1);
$("#cp").val(data.cp);
var provinciaID=data.idprovincia;
var municipioID = data.idmunicipio;
var data = {'provinciaID': provinciaID};
#this ajax sends client ´s ID to another file and gets the list of zones of a city and loads them into (#idmunicipio) selectpicker
$.ajax({
type:'POST',
url:'../ajax/clientes.php?op=selectMunicipio',
data: data,
contentType: "application/x-www-form-urlencoded",
success: function(data){
$("#idmunicipio").html(data);
$('#idmunicipio').selectpicker('refresh');
}
});
})
#now that I have all zones loaded I want to select the client ´s one and show it as selected in the user interface but this code doesn ´t work...
$("#idmunicipio").val(municipioID);
$('#idmunicipio').selectpicker('refresh');
}`
3 ответа
Как вы можете прочитать из документации
https://silviomoreto.github.io/bootstrap-select/methods/#selectpickerval
Правильный способ сделать это
$('.selectpicker').selectpicker('val', 1);
Для нескольких значений вы можете добавить массив значений
$('.selectpicker').selectpicker('val', [1 , 2]);
Задача решена:
Две строки в конце должны быть:
$('#idmunicipio').selectpicker('val', municipioID);
$('#idmunicipio').selectpicker('refresh');
Так, может быть, выбрав опцию, вы могли бы заполнить скрытый ввод фактически выбранным значением?
Используйте on ('change') или addEventListener ('change') для любого из них и заполните ввод выбранной опцией (выберите значение с помощью селектора : selected ).
Надеюсь, это поможет ;)
Похожие вопросы
Новые вопросы
javascript
По вопросам программирования на ECMAScript (JavaScript / JS) и его различных диалектах / реализациях (кроме ActionScript). Включите все соответствующие теги в свой вопрос; например, [node.js], [jquery], [json] и т. д.