Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

282
Views
¿Cómo establecer el valor obtenido de la base de datos dentro de select2 en JavaScript o jQuery?

Tengo un formulario de edición en el que intento obtener datos de MySql DB usando Ajax. Entonces, cuando hay dos menús desplegables select2. Quiero mostrar datos dentro de ese select2. Por ejemplo: cuando he creado un nuevo camión y conductor para una empresa en particular (digamos que el ID de la empresa es 6). Entonces, para el ID de empresa 6, seleccioné Driver como John y Truck como Flatbed y envié el formulario. Los datos se guardaron dentro de DB. Cuando quiero editar o actualizar algunos datos de eso, debería mostrar el nombre de la empresa para ID 6 (que se muestra correctamente) y el conductor como John y Truck como Flatbed.

A continuación se muestra mi guión:

 function getTrip(tripid){ document.getElementById('edtrip').value = tripid; var url = "api/gettripinfo"; $.post(url,{ tripid : tripid, },function(data, status){ if (data.status == "OK") { if (data.statusCode == 1) { document.getElementById("edcompanyselect").value = data.response.company.companyname; document.getElementById("ed_com").value = data.response.company.companyid; document.getElementById('eddriverselect').value = data.response.driver.username; document.getElementById('edtruckselect').value = data.response.truck.name; document.getElementById("edtripnumber").value = data.response.tripnumber; document.getElementById("eddate").value = data.response.date; } else { var error = data.responseMessage; swal(error, "", "error"); } } else { var error = data.responseMessage; swal(error, "", "error"); } }); }

Pero no puedo obtener el resultado esperado. Por favor envíeme sus valiosas sugerencias.

Captura de pantalla para mostrar el problema

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Pruebe el siguiente código. Con jQuery puede establecer el valor y activar el evento de change .

 function getTrip(tripid){ document.getElementById('edtrip').value = tripid; var url = "api/gettripinfo"; $.post(url,{ tripid : tripid, },function(data, status){ if (data.status == "OK") { if (data.statusCode == 1) { document.getElementById("edcompanyselect").value = data.response.company.companyname; document.getElementById("ed_com").value = data.response.company.companyid; document.getElementById('eddriverselect').value = data.response.driver.username; document.getElementById('edtruckselect').value = data.response.truck.name; document.getElementById("edtripnumber").value = data.response.tripnumber; document.getElementById("eddate").value = data.response.date; jQuery("#edcompanyselect").val(data.response.company.companyname).trigger('change'); jQuery("#eddriverselect").val(data.response.driver.username).trigger('change'); jQuery("#edtruckselect").val(data.response.truck.name).trigger('change'); } else { var error = data.responseMessage; swal(error, "", "error"); } } else { var error = data.responseMessage; swal(error, "", "error"); } }); }
about 4 years ago · Juan Pablo Isaza Report

0

El siguiente código resolvió el problema:

 function getTrip(tripid){ document.getElementById('edtrip').value = tripid; var url = "api/gettripinfo"; $.post(url,{ tripid : tripid, },function(data, status){ if (data.status == "OK") { if (data.statusCode == 1) { document.getElementById("edcompanyselect").value = data.response.company.companyname; document.getElementById("ed_com").value = data.response.company.companyid; setTimeout(function(){ getDriverAjax(); getTruckAjax(); },500); document.getElementById("edtripnumber").value = data.response.tripnumber; document.getElementById("eddate").value = data.response.date; setTimeout(function(){ $("#eddriverselect").val(data.response.driver.userid).trigger('change'); $("#edtruckselect").val(data.response.truck.truckid).trigger('change'); $('#edit_info').modal("show"); }, 1500); } else { var error = data.responseMessage; swal(error, "", "error"); } } else { var error = data.responseMessage; swal(error, "", "error"); } }); }
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!