2011-08-11 63 views
1

我使用的數據表與jQuery插件,我已經看了看四周的StackOverflow,發現this other question幾乎同樣的問題(除了我沒有標籤),我嘗試它有說,但不能使它工作。我有這個下拉表中只顯示50條記錄(iDisplayLenth代碼下方),然後當您選擇100或在桌子上完全調整大小本身,我不知道爲什麼。任何幫助或建議將不勝感激。這裏是我的HTML代碼中創建表:數據表寬度的問題

<table id="content-table-redesign" class="display"> 

那麼與之相關的

#content-table-redesign{border-collapse: separate;width:1241px;margin:0 auto;} 
#content-table-redesign th{min-width:45px;color:#2e2e2e;} 

的CSS和JS它在這一點上是相當多的東西我本來和建議的混合我發現另一個環節。一切都在$ document(function(){})中完成;

var oTable = $('#content-table-redesign').dataTable({ 
     "oLanguage": { 
      "sLengthMenu": "Display _MENU_ records per page", 
      "sZeroRecords": "Nothing found - sorry", 
      "sInfo": "Showing _START_ to _END_ of _TOTAL_ records", 
      "sInfoEmpty": "Showing 0 to 0 of 0 records", 
      "sInfoFiltered": "(filtered from _MAX_ total records)" 
     }, 
     "aaSorting": [[ 0, "asc" ]], 
     "bAutoWidth": false, 
     "iDisplayLength": 50, 
     "aLengthMenu": [10, 20, 30, 50, 100, 500], 
     "sPaginationType": "full_numbers", 
     "sDom": '<"top"i><"#up"f>rt<"#bottom2"l><"pagin"p><"clear">', 
     "aoColumns" : [ 
      { sWidth: '500px' }, 
      { sWidth: '1000px' }, 
      { sWidth: '1200px' }, 
      { sWidth: '300px' }, 
      { sWidth: '100px' }, 
      { sWidth: '120px' }, 
      { sWidth: '30px' }, 
      { sWidth: '100px' }, 
      { sWidth: '120px' } 
     ] 
    }); 

    oTable.fnAdjustColumnSizing(); 

我才意識到這個錯誤只會顯示在IE8和Chrome 12+

回答

1

這僅僅是一個長鏡頭,但我想,你的瀏覽器必須調整窗口的大小(因爲有100個條目中的表,你的身體元件膨脹並出現滾動條),因此在oTable.fnAdjustColumnSizing()踢和重新調整你的列。可能想檢查一下嗎?

API reference: fnAdjustColumnSizing

+0

但他們應該調整到我前面提到不應該嗎大小? – Tsundoku

+0

你說得對。但是你說的1000像素欄寬,你真的想使您的用戶提供滾動水平對所有的數據?你的初始和重新渲染表是怎麼樣的? –

+0

不是真的,我只是這樣做是爲了看看是否有改變,但到目前爲止,多數民衆贊成被完全忽略。表完美呈現,但是當下拉值變爲> = 100它開始扭曲(使本身較寬) – Tsundoku

1
var oTable = $('#contactsTable').dataTable({ 
    "bAutoWidth": false 

}); 

添加該代碼