Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

180
Visualizações
No se puede establecer la opción seleccionada desde JavaScript

Tengo un problema al intentar configurar la opción seleccionada desde javascript. Creé una selección y agregué opciones con php de mysql así:

 <select class="form-control input-group-lg" name="progress" id="progress"> <?php if ($conn === false) { die("ERROR: Could not connect. " . mysqli_connect_error()); } $sql = "SELECT * FROM progress"; if ($result = mysqli_query($conn, $sql)) { if (mysqli_num_rows($result) > 0) { while ($row = mysqli_fetch_array($result)) { $id = $row['id']; $progress_name = $row['name']; echo "<option>$progress_name</option>"; } } else { echo "<option>Fault!</option>"; } } else { echo "$sql. " . mysqli_error($conn); } mysqli_close($conn); ?> </select>

Y luego configure la opción seleccionada de javascript de esta manera:

 $('#progress').val("Value to set");

Este método funciona bien y establece la opción seleccionada con el valor que quiero.

OTRO MÉTODO:

Tengo un archivo php y selecciono datos de la base de datos (MySQL) en json y luego uso ajax como este

 $.ajax({ url: 'data_control/orders/progress_select.php', type: 'get', method: "POST", data: {selected_value:selected_value}, dataType: 'JSON', success: function (response) { var len = response.length; for (var i = 0; i < len; i++) { var progress_name = response[i].progress_name; var option = document.createElement("option"); option.text = progress_name; option.value = progress_name; var select = document.getElementById('progress'); select.appendChild(option); } } });

Las opciones se agregan con éxito, pero no puedo establecer el valor seleccionado de esta manera:

 $('#progress').val("Value to set");

¡Gracias por la ayuda!

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

No puede establecer el valor fuera del éxito.

O hazlo

 var select = document.getElementById('progress'); for (var i = 0; i < len; i++) { var progress_name = response[i].progress_name; var option = document.createElement("option"); option.text = progress_name; option.value = progress_name; select.appendChild(option); } select.value='Value to set'

O

 var select = document.getElementById('progress'); for (var i = 0; i < len; i++) { var progress_name = response[i].progress_name; var option = document.createElement("option"); option.text = progress_name; option.value = progress_name; if (progress_name==='Value to set') options.selected = true; select.appendChild(option); }

Alternativa más corta

 document.getElementById('progress').innerHTML = response .map(({progress_name}) => `<option${progress_name === 'Value to set'?' selected' : ''} value="${progress_name}">${progress_name}</option>`) .join("")
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda