javascript - jQuery DataTables <tbody> 未出现

标签 javascript jquery datatables

我是 jQuery DataTables API 的新手,我使用 jQuery DataTables API 在表中添加了一行。但是,为什么该部分不显示?我需要做什么才能让它显示在我添加到表中的每行中?

感谢您的帮助!

<table width='200px' style="table-layout: fixed" id="downlink-table-nameserver" border>
  <thead>
    <td>Server Port WWN</td>
    <td>Server Node Name</td>
    <td>Server Port Name</td>
    <td>Server Node Name</td>             
  </thead>
  <tbody>
    <tr>
      <td>
        <label for="connection-state"> Connection State </label>
        <div id="connection-state"></div>
      </td>
    </tr>
  </tbody>  
</table>

Javascript:

$(document).ready(function() {
    //$('#example').dataTable();

    var serverPortWwnTitle = 'Server Port WWN',
    serverNodeWwnTitle = 'Server Node WWN',
    serverPortNameTitle = 'Server Port Name',
    serverNodeNameTitle = 'Server Node Name';     

    var linkOptions = {
        "bPaginate" : false,
        "bFilter" : false,
        "bInfo" : false,
        "bAutoWidth" : false,
        "aaData" : [],
        "aaSorting": [[ 1, "alphanumeric-asc" ]],
        "aoColumns" : [
            {
                "sTitle" : serverPortWwnTitle,
                "sWidth" : "230px",
                "mDataProp" : "serverPortWwn",
                "sType" : "string"
            }, {
                "sTitle" : serverNodeWwnTitle,
                "sWidth" : "230px",
                "mDataProp" : "serverNodeWwn",
                "sType" : "string"
            }, {                        
                "sTitle" : serverPortNameTitle,
                "sWidth" : "230px",
                "mDataProp" : "serverPortName",
                "sType" : "string"
            }, {
                "sTitle" : serverNodeNameTitle,
                "sWidth" : "230px",
                "mDataProp" : "serverNodeName",
                "sType" : "string"
            }                        
        ]
    };


    var nameSvrTable = $('#downlink-table-nameserver').dataTable(linkOptions);  

    var connMapInfo = [];             

    connMapInfo.push({
        serverPortWwn: "portwwn",
        serverNodeWwn : "nodewwn",
        serverPortName: "portname",
        serverNodeName: "nodename"
    });                               

    nameSvrTable.fnClearTable();                        
    nameSvrTable.fnAddData(connMapInfo);                               


} );

最佳答案

首先尝试使用正确的 HTML 标记。添加<tr><thead>部分,然后使用 <th>而不是<td> <thead>里面。另外,<thead> 中的单元格数量和<tbody>部分应匹配,或使用 colspan="4"修复当前的标记问题。

<table width='200px' style="table-layout: fixed" id="downlink-table-nameserver" border>
<thead>
    <tr>
        <th>Server Port WWN</th>
        <th>Server Node Name</th>
        <th>Server Port Name</th>
        <th>Server Node Name</th>
    </tr>
</thead>
<tbody>
    <tr>
        <td colspan="4">
            <label for="connection-state"> Connection State </label>
            <div id="connection-state"></div>
        </td>
    </tr>
</tbody>

这将是解决问题的良好开端。

关于javascript - jQuery DataTables <tbody> 未出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17030631/

相关文章:

javascript - 使用 jQuery 模糊函数从输入字段返回值

javascript - 为什么 jquery 日期选择器不显示日期?

javascript - 过滤 2 个数组中的唯一元素

javascript - passport.js 没有将用户传递给 session

javascript - 如何等待脚本节点完成加载?

mysql - 如何添加大偏移量?

javascript - 如何将数据表的分页编号格式更改为其他语言环境?

jquery - DataTables 将排序图标放在指定为没有的列上

javascript - 当内部内容改变尺寸时包装器的平滑过渡

jquery - IE6中奇怪的布局问题