0

J'ai une grille. double cliquant sur la grille, je dois obtenir les valeurs de champ de la table ..Lire la valeur du champ d'en-tête du tableau en utilisant Javascript

Code Grid:

<div class="claro" id="sdsfs" name="dataGrid" onclick="setWidgetproperty(this.id,'xy','inner__sdsfs')" ondblclick="editDataGridResponse(this.id)" onmouseup="setDocStyle(this.id)" style="height: 200px; left: 58px; position: absolute; top: 51px; width: 950px;"> 
    <table class="claro" dojotype="dojox.grid.DataGrid" id="inner__sdsfs" rowselector="10px" style="height: 95%; width: 95%;"> 
      <thead> 
       <tr> 
        <th field="Column1" width="100px"> 
         Column1 
        </th> 
        <th field="Column2" width="100px"> 
         Column2 
        </th> 
        <th field="Column3" width="100px"> 
         Column3 
        </th> 
        <th field="Column4" width="100px"> 
         Column4 
        </th> 
        <th field="Column5" width="100px"> 
         Column5 
        </th> 
       </tr> 
      </thead> 
    </table> 
    <input id="hidden__sdsfs" name="dataGrid" style="display:none;" type="hidden"> 
</div> 

J'ai essayé la fonction ci-dessous. mais ça ne marche pas.

editDataGridResponse(): 



function editDataGridResponse(_sgridID){ 
    var tableID = document.getElementById("inner__"+_sgridID); 
    for(var i=0; i<tableID.rows[0].length; i++){ 
        alert(tableID.rows[0].field); 
       } 
    } 
+1

'alerte (tableID.rows [0] .cells [i] .textContent);' – RobG

+0

reçois erreur: « Impossible de lire La propriété '0' de undefined " – Rachel

+0

Est-ce que la valeur du champ et la valeur du contenu de l'en-tête sont toujours les mêmes? – Sharun

Répondre

0

Essayez

function editDataGridResponse(_sgridID){ 
    var tableID = document.getElementById("inner__"+_sgridID); 
    for(var i=0; i<tableID.rows[0].cells.length; i++){ 
     alert(tableID.rows[0].cells[i].innerHTML); 
    } 
} 
+0

Je reçois une erreur: "Impossible de lire la propriété '0' de undefined" – Rachel

+0

Veuillez vérifier maintenant. – Sharun

+0

J'ai eu le problème .. puisque la grille est de type dojo, la fonction ne fonctionne pas. pour html grid/table, la fonction retourne les valeurs du champ. – Rachel

0

Essayez cette

function editDataGridResponse(_sgridID){ 
    var tableID = document.getElementById("inner__"+_sgridID); 
    if (tableID) 
    { 
     for (var j= 0; j < tableID.rows.length; j++) 
     { 
      for(var i=0; i<tableID.rows[j].cells.length; i++){ 
         alert(tableID.rows[j].cells[i].field); 
        } 
     } 
    } 
    else 
     alert("Table Id " + "inner__"+_sgridID + " Wrong"); 
    } 
+0

erreur: "Impossible de lire la propriété 'longueur' de undefined" – Rachel

+0

Plz Vérifiez avec ma condition if. – 999k

Questions connexes