none
¿Como rellenar de forma dinamica input text desde un arreglo json? RRS feed

  • Pregunta

  • Hola comunidad espero puedan ayudarme con esto ya que no he podido resolverlo de antemano les agradezco su tiempo y ayuda.

    Tengo un grid anidado(jqxGrid) por lo que al expander una fila me devuelve el siguiente arreglo json. Nota: Este arreglo puede cambiar según la fila expandida puede haber ocasiones que solo tenga una métrica o dos como dije todo depende de lo que me regrese la fila expandida. 

    var col_detalle_subgrid = [{"Metrica":"Quincenal", "Nombre":"Paco", "Puesto":"Constructor", "Edad":40}, {"Metrica":"Semanal", "Nombre":"Pepe", "Puesto":"Limpieza", "Edad":25}, {"Metrica":"Mensual", "Nombre":"Juan", "Puesto":"Gerente", "Edad":35}, {"Metrica":"Bimestral", "Nombre":"Alonso", "Puesto":"Mecánico", "Edad":28}, {"Metrica":"Anual", "Nombre":"Jose", "Puesto":"Maestro", "Edad":28}];

    Tengo dos input de html en mi Popup (Boostrap) que están en el mismo WebForm y lo que requiero hacer es colocar el valor del Nombre y edad pero no me muestra nada.

    ¿Alguna idea?

    Trabajo con columnas dinámicas es por ello que no ingreso el nombre de mis columnas en el bucle.

    Aqui colo mi codigo.

    // El json lo recorro de esta forma ya que como trabajo con columnas dinamicas el nombre puede cambiar
    
    for (var i in col_detalle_subgrid) {
    	for (var j in col_detalle_subgrid[i]) {
    
    		if (col_detalle_subgrid[i][j] == "Quincenal") {
    			// Si la comparación es correcta visualizo una Tab(Estas pertenecen por cada metrica)
    			$("#Quincenal").css("display", "inline-block");
    			// Aqui trato de eliminar el objeto pero quiero eliminar todo el aaray.
    			delete col_detalle_subgrid[i][j];;
    
    
    		}
    		else if (col_detalle_subgrid[i][j] == "Semanal") {
    			$("#Semanal").css("display", "inline-block")
    			// delete col_detalle_subgrid[i][j]; ;
    			console.log(col_detalle_subgrid[i][j]);
    
    
    		}
    		else if (col_detalle_subgrid[i][j] == "Mensual") {
    			$("#Mensual").css("display", "inline-block");
    			//delete col_detalle_subgrid[i][j];
    			console.log(col_detalle_subgrid[i][j]);
    
    		}
    		else if (col_detalle_subgrid[i][j] == "Bimestral") {
    
    			$("Bimestral").css("display", "inline-block");
    			//                                    //delete col_detalle_subgrid[i][j];
    			console.log(col_detalle_subgrid[i][j]);
    
    
    		}
    		else if (col_detalle_subgrid[i][j] == "Anual") {
    			$("#Anual").css("display", "inline-block");
    			//                                    //delete col_detalle_subgrid[i][j];
    			console.log(col_detalle_subgrid[i][j]);
    
    		}
    
    		//Aqui coloco los valores del json en el input text pero no me muestra nada
    
    		$("#txtNombre").val(col_detalle_subgrid[i][j]);
    		$("#txtEdad").val(col_detalle_subgrid[i][j]);
    
    		$("#txtNombre").val(col_detalle_subgrid[i][j]);
    		$("#txtEdad").val(col_detalle_subgrid[i][j]);
    
    
    		$("#txtNombre").val(col_detalle_subgrid[i][j]);
    		$("#txtEdad").val(col_detalle_subgrid[i][j]);
    
    
    		$("#txtNombre").val(col_detalle_subgrid[i][j]);
    		$("#txtEdad").val(col_detalle_subgrid[i][j]);
    
    
    		$("#txtNombre").val(col_detalle_subgrid[i][j]);
    		$("#txtEdad").val(col_detalle_subgrid[i][j]);
    
    	}
    
    }


    martes, 4 de junio de 2019 15:08

Respuestas

  • hola

    si estas asignando informacion a controles simples como ser textbox porque pones estos dentro de dos "for" ?

    No entiendo que es lo que seleccionas para asignar a estos controles si las variables "i" y "j" se pisan en cada iteracion pisando el valor que asignaste antes a estos textbox

    deberias poder tomar solo una de las entidades del array del json y ese asignarlo a los controles, pero esta asignacion va por fuera de los for

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 4 de junio de 2019 18:37