2016-04-11 5 views
2

動的htmlテーブルを作成しようとしていますが、ヘッダが下に来ています。誰でも自分のコードをチェックして問題を解決するのを手伝ってください。動的htmlテーブルですが、ヘッダが下に来る

<table id="queryResult" border="1"> 
    <tr> 
     <th id="header1">Name</th> 
     <th id="header2">Number Of Employees</th> 
    </tr> 
</table> 
<script type="text/javascript">  
function soqlQuery(){   
     try{      
      var table  = document.getElementById("queryResult"); 

      sforce.connection.sessionId = '{!$Api.Session_ID}'; 
      var result = sforce.connection.query("SELECT Id, Name, NumberOfEmployees from Account",{ 
       onSuccess : function(result){ 
        var records   = result.getArray("records");      
        for(var i = 0; i <records.length; i++){ 
         var row   = table.insertRow(0); 
         var cell1  = row.insertCell(0); 
         var cell2  = row.insertCell(1); 
         cell1.innerHTML = records[i].Name; 
         cell2.innerHTML = records[i].NumberOfEmployees; 
        }   
       }, 
       onFailure : function(error){ 
        alert('In failure - '+ error); 
       } 
      }); 
     }catch(e){ 
      alert(e); 
     } 
    } 
    window.onload=function(){ 
     soqlQuery(); 
    } 
    </script> 

私はJSとJS自体からデータベース結果を得ることに結びついています。結果を表示しようとしています。

+0

あなたが0に行を挿入するたびにそうヘッダは –

答えて

4

代わりに<thead><tbody>を使用してください。

<table id="queryResult" border="1"> 
    <thead> 
    <tr> 
     <th id="header1">Name</th> 
     <th id="header2">Number Of Employees</th> 
    </tr> 
    </thead> 

    <tbody id="tablebody"> 

    </tbody> 

</table> 

次に、あなただけの<tbody>の代わり<table>を選択して、<tbody>にあなたのmysqlの結果を追加することができます。それは最初に挿入した後、その上にすべてを置くよう

var tablebody = document.getElementById("tablebody"); 
+0

'tr'がの子でなければなりません...下部にあります'thead'と他の方法ではない –

+0

あなたは正しいです。私はそれを投稿した後に気づいた。ありがとう –

関連する問題