Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/04/2012, 02:43
AJDC
 
Fecha de Ingreso: agosto-2003
Mensajes: 324
Antigüedad: 20 años, 8 meses
Puntos: 1
No consigo que funcione en el primer click

Hola.
Construyo con jquerymobile una lista de enlaces, que corresponden a elementos, los cuales posteriormente quiero editar o consultar.
necesito saber el "id" del elemento que pulso, para luego, mostrar al abrir la página, el correspondiente elemento.

El problema que tengo es que la primera vez qe hago click, me decuelve id vacío, pero a partir de ahí, la segunda y posteriores, ya sí funciona bien.

¿Qué puedo hacer para que funcione a la primera?
Aquí parte del código:

Código:
//cargamos la lista de valores
function cargarListaTrabajadas(){
	//Eliminamos el listado para construirlo de nuevo
	$('#trabajadas div[data-role="content"] ul').remove();
	$('#trabajadas div[data-role="content"]').html("<ul data-role='listview' data-theme='c'></ul>");
	//Obtenemos los ids almacenados
	var listaItemIds = getListaTrabajadasIds();
	var code = ""; 		
	// Get the HTML code for the list of items.				
	for(item in listaItemIds)
	{
		var jsonData = localStorage.getItem(listaItemIds[item]);
		if(jsonData)
		{
			var data = JSON.parse(jsonData);
			var html = "<li id='" + data.clave + "'><a id='" + data.clave + "' href='#vertrabajada'>" + "<h3>" + data.fecha + "</h3>" +   "<span class='ui-li-count'>"+ data.tiempoEntrada + "</span>"  +  "<p>"+ data.horainicio + " - " + data.horafin + "</p>"  + "</a></li>";	
			code += html;
		}
	}
	$('#trabajadas div[data-role="content"] ul').html(code);
	
}

//Cargar el item Trabajada para visualizarlo
$( document ).delegate("#vertrabajada", "pagebeforecreate", function() {
	$('#trabajadas div[data-role="content"] ul[data-role="listview"] li a').click(function(){
		var idTrabajadaOpen = this.id;
		var jsonData = localStorage.getItem(idTrabajadaOpen);
		if(jsonData)
		{
			var data = JSON.parse(jsonData);
			$('#vertrabajada div[data-role="content"] input[id="clave"]').val(data.clave);
			$('#vertrabajada div[data-role="content"] input[id="tiempoentrada"]').val(data.tiempoEntrada);
			$('#vertrabajada div[data-role="content"] input[id="fecha"]').val(data.fecha);
			$('#vertrabajada div[data-role="content"] input[id="horainicio"]').val(data.horainicio);
			$('#vertrabajada div[data-role="content"] input[id="horafin"]').val(data.horafin);
			$('#vertrabajada div[data-role="content"] input[id="festivo"]').val(data.festivo);
			$('#vertrabajada div[data-role="content"] textarea[id="comentario"]').val(data.comentario);
		}
	});	
});
Gracias.