Tu problema es de lógica te mostrare la función comentada...
Código Javascript
:
Ver original//Primero que todo la variable grilla esperaria algo como esto un arreglo proveniente de la base de datos...
//var Grilla = <?php echo json_encode($row) ?>;
function habilitar(f) {
//declaras el name al que accesaras
cual1 = 'gestionar[]';
//creas un arreglo
todos = new Array();
//Estimas la cantidad de checkbox con el name gestionar[]
total = f[cual1].length;
//Recorres todos los checkbox existentes
for (var i = 0; i < total; i++) {
//Agregas el value del checkbox seleccionado al arreglo todos
//Algo in-necesario puesto que solo estara activo un checkbox, obtendras entonces el value de dicho
//checkbox, no necesitas entonces un arreglo.
if (f[cual1][i].checked) {
todos[todos.length] = f[cual1][i].value;
}
}
//Si mostrases el resultado en pantalla te darias cuenta que es solo un valor correspondiente al value
alert("ese es el value del checkbox: " + todos);
//Grilla esta esperando un ARREGLO. OJO CON ESTO!!
var Grilla = todos;
var Cargo = document.getElementById("cargo1");
var Gerencia = document.getElementById("gerencia1");
//Es como si estuvieras intentando mostrar un elemnto contenido dentro de un escalar OJO!!
Cargo.innerHTML = Grilla["Cargo"];
Gerencia.innerHTML = Grilla["Gerencia"];
}