Foros del Web » Programando para Internet » Javascript »

Uncaught TypeError: Cannot read property '0' of undefined

Estas en el tema de Uncaught TypeError: Cannot read property '0' of undefined en el foro de Javascript en Foros del Web. estoy haciendo un mantenimiento alta,baja,modifcacion con ajax+php+jquery. cuando modifico un registro me da el error Uncaught TypeError: Cannot read property '0' of undefined en la ...
  #1 (permalink)  
Antiguo 21/01/2016, 11:59
 
Fecha de Ingreso: agosto-2002
Ubicación: Lleida
Mensajes: 506
Antigüedad: 22 años, 3 meses
Puntos: 0
Uncaught TypeError: Cannot read property '0' of undefined

estoy haciendo un mantenimiento alta,baja,modifcacion con ajax+php+jquery.
cuando modifico un registro me da el error
Uncaught TypeError: Cannot read property '0' of undefined
en la linea del javascpript
$('#nomPersonal').val(datos[0]);

Código:
function editarPersonal(id){
	$('#formulario')[0].reset();
	var url = '../php/edita_personal.php';
		$.ajax({
		type:'POST',
		url:url,
		data:'id='+id,
		success: function(valores){
				var datos = eval(valores);
				$('#reg').hide();
				$('#edi').show();
				$('#pro').val('Edicion');
				$('#idPersonal').val(id);
				$('#nomPersonal').val(datos[0]);
				$('#domPersonal').val(datos[1]);
				$('#pobPersonal').val(datos[2]);
				$('#proPersonal').val(datos[3]);
				$('#dpPersonal').val(datos[4]);
				$('#tlfnPersonal').val(datos[5]);
				$('#nssPersonal').val(datos[6]);
				$('#faltaPersonal').val(datos[7]);
				$('#fbajaPersonal').val(datos[8]);
				$('#nifPersonal').val(datos[9]);
				$('#catPersonal').val(datos[10]);
				$('#IBANPersonal').val(datos[11]);
				
				$('#registra-producto').modal({
					show:true,
					backdrop:'static'
				});
			return false;
		}
	});
	return false;
}
y aqui el codigo php de edita_personal.php
Código:
include('conexion.php');

$id = $_POST['id'];

//OBTENEMOS LOS VALORES DEL PRODUCTO

$valores = mysql_query("SELECT * FROM personal WHERE idPersonal = '$id'");
$valores2 = mysql_fetch_array($valores);

$datos = array(
				0 => $valores2['nomPersonal'], 
				1 => $valores2['domPersonal'], 
				2 => $valores2['pobPersonal'], 
				3 => $valores2['proPersonal'],
				4 => $valores2['dpPersonal'], 
				5 => $valores2['tlfnPersonal'], 
				6 => $valores2['movPersonal'], 
				7 => $valores2['nssPersonal'],
				8 => $valores2['faltaPersonal'], 
				9 => $valores2['fbajaPersonal'], 
				10 => $valores2['nifPersonal'], 
				11 => $valores2['catPersonal'],
				12 => $valores2['IBANPersonal'],
				);
echo json_encode($datos);
he comprobado los nombres de los campos del formulario y son correctos.
No se donde mirar para localizar este error
  #2 (permalink)  
Antiguo 21/01/2016, 12:12
 
Fecha de Ingreso: junio-2011
Mensajes: 289
Antigüedad: 13 años, 6 meses
Puntos: 15
Respuesta: Uncaught TypeError: Cannot read property '0' of undefined

Hola,


Prueba con lo siguiente:

Código Javascript:
Ver original
  1. $.ajax({
  2.     // En data puedes utilizar un objeto JSON, un array o un query string
  3.     data: {"parametro1" : "valor1", "parametro2" : "valor2"},
  4.     //Cambiar a type: POST si necesario
  5.     type: "GET",
  6.     // Formato de datos que se espera en la respuesta
  7.     dataType: "json",
  8.     // URL a la que se enviará la solicitud Ajax
  9.     url: "script.php",
  10. })

Esta es la estructura básica, si quieres utilizar el arreglo como JSON debes usar la etiqueta 'dataType: "json",' en tu ajax

Etiquetas: ajax, formulario, js, php, read, undefined, valor
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:05.