Ver Mensaje Individual
  #4 (permalink)  
Antiguo 27/12/2017, 21:02
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Llamar datos dinamicos en un input

Según veo no es necesario usar js, simplemente cargar completamente la página.

Pero acá un posible js para lo que pides, y dime que te parece...


Código Javascript:
Ver original
  1. var achvs = [[3, "Logro 1"],[5, "Logro 2"], [7, "Logro 3"], "Logro 4"]; //el numerito que acompaña es el valor max. del rango del logro.
  2.  
  3. function achievements(id, id2){
  4. var table = document.getElementById(id);
  5. var table2 = document.getElementById(id2);
  6.  
  7. var rows = table.getElementsByTagName("tr");
  8.  
  9.     for(var k=1; k<rows.length; k++){
  10.     var cols = rows[k].getElementsByTagName("td");
  11.     var prom = 0;
  12.     var student = cols[0].innerHTML;
  13.         for(var n=1; n<cols.length-1; n++){
  14.         prom += parseInt(cols[n].innerHTML);
  15.         }
  16.     prom /= 4;
  17.     cols[cols.length-1].innerHTML = prom;
  18.    
  19.     var nRow = document.createElement("tr");
  20.     var nCol1 = document.createElement("td");
  21.     var nCol2 = document.createElement("td");
  22.    
  23.     var ach = achvs[achvs.length-1];
  24.         for(var n=0; n<achvs.length; n++){
  25.             if(prom <= achvs[n][0]){
  26.             ach = achvs[n][1];
  27.             break;
  28.             }
  29.         }
  30.    
  31.     nCol1.innerHTML = student;
  32.     nCol2.innerHTML = ach;
  33.    
  34.     nRow.appendChild(nCol1);
  35.     nRow.appendChild(nCol2);
  36.    
  37.     table2.appendChild(nRow);
  38.     }
  39.  
  40.    
  41. }


Código HTML:
Ver original
  1. <table id="table">
  2.     <tr>
  3.         <td>Alumno</td>
  4.         <td>Nota 1</td>
  5.         <td>Nota 2</td>
  6.         <td>Nota 3</td>
  7.         <td>Nota 4</td>
  8.         <td>Promedio</td>
  9.     </tr>
  10.     <tr>
  11.         <td>Juan</td>
  12.         <td>1</td>
  13.         <td>1</td>
  14.         <td>1</td>
  15.         <td>4</td>
  16.         <td></td>
  17.     </tr>
  18.         <tr>
  19.         <td>Catalina</td>
  20.         <td>10</td>
  21.         <td>9</td>
  22.         <td>7</td>
  23.         <td>2</td>
  24.         <td></td>
  25.     </tr>
  26.         <tr>
  27.         <td>Cristobal</td>
  28.         <td>7</td>
  29.         <td>6</td>
  30.         <td>2</td>
  31.         <td>8</td>
  32.         <td></td>
  33.     </tr>
  34.  
  35. <table id="table2">
  36. <tr>
  37. <td>Alumno</td>
  38. <td>Logros</td>
  39. </tr>
  40.  
  41.  
  42. <input value="Cargar logros" type="button" onclick="achievements('table', 'table2');" />

Saludos, espero sirva.