Mi consulta es que cuando selecciono una opcion de la lista ordenada y llamo a la funcion afterUpdateElement de scriptaculuos me devuleve el value correctamente(que es el id del insumo de la bdd), pero cuando voy a grabar este insumo llamando a la funcion agregarFila(), este solo no me toma correctame el value,si no que el primero en desplegar, es decir si selecciono en la mitad de la lista este al grabas me va a tomar el primero y no el de la mitad
en que estoy fallando???
aca entrega correctamente el value
ej:
Código PHP:
<script type="text/javascript">
document.getElementById('medicamento').focus();
var cache=new Date().getTime();
datos="cache="+cache;
new Ajax.Autocompleter("medicamento","divResultados","qryDatagrid.php",{minChars:3,parameters:datos,
//aca entrega correctamente
afterUpdateElement:function(text,li){alert(li.value);}});
</script>
aca codigo de cuando voy a grabar
Código PHP:
function agregarFila(){
if($('idmedicamento')==null || $('idmedicamento')==undefined){
$('medicamento').focus();
alert("Atencion: Debes ingresar medicamento a las lista para poder guardar");
return false;
}else{
//esta es la varible que toma el valor del id y lo no entrega bien
var idmedicamento=document.getElementById('idmedicamento').value;
var medicamento=document.getElementById('medicamento').value;
var dosis1=document.getElementById('dosis1').value;
var dosis2=document.getElementById('dosis2').value;
var dosis3=document.getElementById('dosis3').value;
alert(idmedicamento);
if(medicamento==""){
$('medicamento').focus();
alert("Atencion: No haz ingresado un medicamento");
return false;
}else if(dosis1==""){
$('dosis1').focus();
alert("Atencion: No haz ingresado una dosis 1");
return false;
}else if(dosis2==""){
$('dosis2').focus();
alert("Atencion: No haz ingresado una dosis 2");
return false;
}else if(dosis3==""){
$('dosis3').focus();
alert("Atencion: No haz ingresado una dosis 3");
return false;
}else{
var inputs=document.getElementById('tabla').getElementsByTagName('input');
for(var c=0; c<inputs.length; c++){
if(inputs[c].type=='hidden'){
if(inputs[c].name=='idmedicamento[]'){
if(inputs[c].value==idmedicamento){
alert("Atencion: Ya se encuentra ingresado el medicamento en la lista");
return false;
}
}
}
}
var tabla = document.getElementById("tabla");
var fila = tabla.insertRow(tabla.rows.length);
var celda = fila.insertCell(fila.cells.length);
celda.innerHTML = '<input type="hidden" value="'+idmedicamento+'" readonly="readonly" name="idmedicamento[]" />';
celda = fila.insertCell(fila.cells.length);
celda.innerHTML = '<input type="text" value="'+medicamento+'" readonly="readonly" name="medicamento[]" size="70" />';
celda = fila.insertCell(fila.cells.length);
celda.innerHTML = '<input type="text" readonly="readonly" value="'+dosis1+'" name="dosis1[]" />';
celda = fila.insertCell(fila.cells.length);
celda.innerHTML = '<input type="text" readonly="readonly" value="'+dosis2+'" name="dosis2[]" />';
celda = fila.insertCell(fila.cells.length);
celda.innerHTML = '<input type="text" readonly="readonly" value="'+dosis3+'" name="dosis3[]" />';
celda = fila.insertCell(fila.cells.length);
celda.innerHTML = '<input type="button" value="eliminar" onclick="javascript: eliminarFila(this);" />';
celda = fila.insertCell(fila.cells.length);
celda.innerHTML = '<input type="button" value="editar" onclick="javascript: editarFila(this);" />';
//document.getElementById('idmedicamento').value=0;
}
//document.getElementById('idmedicamento').value=0;
}
//document.getElementById('idmedicamento').value=0;
}