根据所选下拉列表填充输入字段值(动态添加)

问题描述 投票:0回答:1

我有一个表单,允许使用 JavaScript 动态添加和删除下拉列表。我想根据下拉选择填充名称为“nombre”的输入。我可以从 MySQL 表中获取选择 ID 的名称,但我不知道如何使用该名称填充输入。

这是用于动态添加下拉列表 (idmedico) 和填充输入 (nombre) 的 JavaScript 代码:

var fila='<tr class="filas" id="fila'+cont+'">'+
  '<td><button type="button" class="btn btn-danger" onclick="eliminarDetalle('+cont+')">X</button></td>'+
  '<td><select  name="idmedico[]" class="form-control idmedico" onchange="myFunction(this.value)" required><option value="" >Seleccione Cuenta</option><?php echo seleccionar_medico($connect); ?></select></td>'+
  '<td><input type="text" id="nombre[]" name="nombre[]" value=""></td>'+
  '</tr>';
cont++;
detalles++;
$('#detalles').append(fila);

我可以根据下拉列表中选择的 ID 获取名称(nombre)。对于

onchange
,我有以下 JavaScript 函数:

function myFunction(idmedico) {
  $.ajax({
    url: "traer_nombre_medico.php",
    type: "POST",
    dataType: "json",
    data: { idmedico: idmedico },
    success: function (data) {
      alert(data.nombre);
    },
    error: function (errorThrown) {
      alert(errorThrown);
    },
  });
}

但我不知道如何用获取的名称(

id="nombre[]"
)填充输入:

'<td><input type="text" id="nombre[]" name="nombre[]" value=""></td>'+

请问,有什么想法吗?

javascript php
1个回答
0
投票

尝试这个代码,它会起作用。在 .medico 类上使用 Jquery 更改事件,该事件与您的 onchange 事件相同,并且每个名称输入都会根据您的 cont 变量给出唯一的 id,该 id 可以在 data-id 属性中使用以供进一步使用。检查下面的代码。


      var fila='<tr class="filas" id="fila'+cont+'">'+
     '<td><button type="button" class="btn btn-danger" onclick="eliminarDetalle('+cont+')">X</button></td>'+
  '<td><select  name="idmedico[]" class="medico form-control "  data-id="+cont+" required><option value="" >
       Seleccione Cuenta</option><?php echo seleccionar_medico($connect); ?></select></td>'+
  '<td><input type="text" id="nombre_+cont+" name="nombre[]" value=""></td>'+
  '</tr>';
cont++;
detalles++;
$('#detalles').append(fila);

javascript函数

      var fila='<tr class="filas" id="fila'+cont+'">'+
     '<td><button type="button" class="btn btn-danger" onclick="eliminarDetalle('+cont+')">X</button></td>'+
  '<td><select  name="idmedico[]" class="medico form-control "  data-id="+cont+" required><option value="" >
       Seleccione Cuenta</option><?php echo seleccionar_medico($connect); ?></select></td>'+
  '<td><input type="text" id="nombre_+cont+" name="nombre[]" value=""></td>'+
  '</tr>';
cont++;
detalles++;
$('#detalles').append(fila);
© www.soinside.com 2019 - 2024. All rights reserved.