1

c#.netを使用してWebアプリケーションを開発しましたが、IE8以降ではjavaスクリプトグリッドが表示されません。table(grid)ヘッダーを生成するためのjavascriptのコードは次のとおりです。tableidは行数、Titleはグリッドヘッダー名です。

function GenerateTableHeader(TableId,Title)
     {

       if(document.getElementById(TableId).rows.length>0) //0-indicates No rows in table
       {
        return false;
       }
        var tblrow  = document.createElement("TR");
        tblrow.setAttribute("name","row1");
        tblrow.setAttribute("Id","row1");
        var TitleDesc=document.getElementById(Title).value;
        var TitleColumns=TitleDesc.split('|');
        for(i=0;i<TitleColumns.length;i++)
        {
        //Apply Style for table row heading
        var tblCell = document.createElement("<TD class=\"Gridheading\">"); 
        tblCell.innerHTML='<b>' + TitleColumns[i] + '</b>';
        tblCell.setAttribute ("align","center");
        //tblCell.setAttribute ("width","7%");
        tblrow.appendChild(tblCell);
        tblCell = null;
    }
        var tblItemBody=document.getElementById(TableId).getElementsByTagName("tbody")[0]
        tblItemBody.appendChild(tblrow);  
}

IE6および7ではグリッドが表示されています。IE8以降ではグリッドを表示する必要があります。助けてください.....よろしくお願いします。

4

2 に答える 2

0

これを試して

function GenerateTableHeader(TableId,Title)
 {

   if(document.getElementById(TableId).rows.length>0) //0-indicates No rows in table
   {
    return false;
   }
    var tblrow  = document.getElementById(TableId).insertRow(0);
    tblrow.setAttribute("name","row1");
    tblrow.setAttribute("Id","row1");

    var TitleDesc=document.getElementById(Title).value;
    var TitleColumns=TitleDesc.split('|');
    for(i=0;i<TitleColumns.length;i++)
    {

    var tblCell = tblrow.insertCell(0);
    tblCell.className='Gridheading';

    tblCell.innerHTML='<b>' + TitleColumns[i] + '</b>';
    tblCell.style.align="center";


}
于 2012-09-05T12:34:09.523 に答える
0
function GenerateTableHeader(TableId,Title)
     {

       if(document.getElementById(TableId).rows.length>0) //0-indicates No rows in table
       {
        return false;
       }
        var tblrow  = document.createElement("<TR></TR>");
        tblrow.setAttribute("name","row1");
        tblrow.setAttribute("Id","row1");
        var TitleDesc=document.getElementById(Title).value;
        var TitleColumns=TitleDesc.split('|');
        for(i=0;i<TitleColumns.length;i++)
        {
        //Apply Style for table row heading
        var tblCell = document.createElement("<TD class=\"Gridheading\"/>"); 
        tblCell.innerHTML='<b>' + TitleColumns[i] + '</b>';
        tblCell.setAttribute ("align","center");
        //tblCell.setAttribute ("width","7%");
        tblrow.appendChild(tblCell);
        tblCell = null;
    }
        var tblItemBody=document.getElementById(TableId).getElementsByTagName("tbody")[0]
        tblItemBody.appendChild(tblrow);  
}

タグを作成するときは、おそらくタグを閉じる必要があります。

于 2012-09-05T12:42:13.943 に答える