JQuery - onExpandRow JQuery Easy UI

   
Vista:

onExpandRow JQuery Easy UI

Publicado por Luis (2 intervenciones) el 07/11/2013 20:07:46
Saludos a todos,
recien enpiezo a trabajar con JQuery Easy UI, y no la tengo mucho por la mano.
Si pudieran hecharme una mano con un problemilla que llevo arrastrando ya desde dias.

Mi problema es que creo un datagrid con su ExpandRow(Signo +) para mostrar los detalles de la fila seleccionada.
Pues bien, necesito poder expandir solo una fila.
Ahora mismo puedo expandirlas todas.
Habria algún metodo o manera de que al expandir una fila, se habrà y muestre su contenido,
y si habro otra, sin cerrar la anterior, se cierre la anterior automaticamente?

Sólo tengo que tener una fila extendida.

Gracias por vuestro tiempo, y espero me puedan ayudar en este tema, que me trae por la calle de la amargura.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

onExpandRow JQuery Easy UI

Publicado por xve (557 intervenciones) el 07/11/2013 21:37:50
Hola Luis, en teoría, ExpandRow, únicamente debería de expandir la columna en la que se encuentra...

Nos puedes mostrar tu código?

http://www.jeasyui.com/tutorial/datagrid/datagrid21.php
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

onExpandRow JQuery Easy UI

Publicado por Luis (2 intervenciones) el 08/11/2013 08:13:15
Si si xve, si el comportamiento es el correcto,
yo puedo expander la que selecciono, osea que las puedo ir expandiendo una a una,
pero a mi lo que me interesa hacer, és que sólo se pueda expander una, osea,
Expando la primera, Ok, me muestra lo que yo quiera, hasta ahí todo bien,
pero lo que necesito es que al expander una segunda, la primera se cierre automáticamente, y así succesivamente.
Vamos que sólo pueda haber una expandida a la vez.
No sé si hay alguna funciona de la libreria que lo haga, pero es lo que realmente necesito,
solamente una expandida, que sólo muestra la última que expandamos.

Gracias y esperando vuestra sabiduria.

Aquí el código del dataGrid:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
$(function(){
	//$("#wcontactes").window("open");
	$('#dg').datagrid({
		view: detailview,
		detailFormatter:function(index,row){
			return '<div style="padding:2px"><table id="ddv-' + index + '"></table></div>';
		},
		onExpandRow: function(index,row){
			$('#ddv-'+index).datagrid({
				url:'./contactes/getContacte.php?id='+row.id_empresa,
				fitColumns:false,
				singleSelect:true,
				rownumbers:true,
				loadMsg:'',
				height:'auto',
				columns:[[
					{field:'con_nom',title:'Nom',width:100,align:'center', style:'red'},
					{field:'con_departament',title:'Departament',width:100,align:'center'},
					{field:'con_telefon',title:'Telèfon',width:160,align:'center'},
					{field:'con_correu',title:'Email',width:160,align:'center'},
					{field:'con_altres',title:'Altres',width:'auto',align:'center'}
				]],
				onResize:function(){
					$('#dg').datagrid('fixDetailRowHeight',index);
				},
				onLoadSuccess:function(){
					setTimeout(function(){
						$('#dg').datagrid('fixDetailRowHeight',index);
					},0);
				},
				onSelect:function(){
					//var idContacte = $('#ddv-'+index).datagrid('getSelected').id_contacte;
					var rowFila = $('#ddv-'+index).datagrid('getSelected');
					//console.log(idContacte);
					$("#editContacte").attr("onclick","editContacte("+rowFila+")");
				}
			});
			$('#dg').datagrid('fixDetailRowHeight',index);
		}
	});
});
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar