2016-10-17 3 views
0

테이블에서 특정 열의 너비를 조정하려고합니다 (긴 내용과 헤더를 줄 바꿈).Datatables -`columnDefs`를 사용하여 열 너비를 변경하십시오.

문서 here에 따라 지정한 열의 너비를 조정할 수 없는데 뭔가 빠졌습니까?

내가 id=onewidth=100%table에 대해 다음 DataTable을 매개 변수를 가지고 : 나는 HTML에있는 CSS 재 지정을 지정하지 않은 또는 다른, 그래서 어쩌면이 문제가

$(document).ready(function(){ 
    $('#one').DataTable({ 
     paging: true, 
     'scrollX': false, 
     'autoWidth': false, 
     'columnDefs' : [ 
      {'targets': [0,1], 'width': '50px'} 
     ], 
     "iDisplayLength": 50, 
     'lengthMenu': [[10, 20, 50, 100, -1], [10, 20, 50, 100, "All"]], 
     dom: 'Blfrtip', 
     buttons: ['copy', 'csv', 'excel'] 
    }); 
}); 

를?

+0

나는 이것에 대해 잘 모르겠지만, Nick,하지만 나는'autoWidth' 매개 변수를 제거하려고합니다. 모든 열의 너비를 지정하지 않은 경우 문제가 될 수 있습니다. 필자는 일반적으로'columnDefs'를 사용하지 않습니다. 대신'columns'을 사용하고 각 열에 대해 원하는 것을 설명합니다. DataTables에서 너비를 지정하지 않은 열의 크기를 자동으로 지정합니다. 그래서'autoWidth'도 사용하지 않습니다. 그것이 저에게 효과가 있습니다. – BobRodes

답변

0

답장을 보내 주셔서 감사합니다. 추가 파기 후에, 나는 테이블이 nowrap의 종류로 놓이고 있다는 것을 깨달았다. 그래서 성가신. 이 클래스를 제거한 후 랩은 필요한대로 작동합니다. 고맙습니다.

0

어떤 데이터를 입력 하시겠습니까? width 속성은 th 요소에만 적용되므로 td 열에 더 넓은 요소가 있으면 셀이 예상보다 커질 수 있습니다. 예를 들어 50px보다 넓은 이미지는 열을 50px보다 넓게 만듭니다.

+0

모든 데이터는 문자열입니다. 'th'와'td' 업데이트의 좋은 점. 그래서'td '를 업데이트 할 수있는 방법이 있습니까? – NickBraunagel

+0

@NickBraunagel 안합니다. 열의 너비를 원하면 'th'가 더 깨끗합니다. DataTables는 사용자가 별도로 지정하지 않는 한 항상 문자열을 단어 랩핑합니다. 아마도 문자열에 공백이 없으며 50px보다 넓을 수도 있습니다. 나는 전에 그것을 시도한 적이 없으므로 나는 그것이 무엇을 할 것인지 모른다. 어쨌든 필자의 데이터에 맞출 수있는 칼럼을 좁히고 싶지 않기 때문에 시도하지 않았습니다. 왜 네가 그랬는지 상상할 수는 없지만 ...? – BobRodes

+0

@NickBraunagel AFAIK 당신은't'와'td'를 구분하기 위해 CSS를 사용해야 할 것입니다. 즉, 테이블 레이아웃이 고정 또는 자동 너비 계산을 사용함에 따라 셀이 실제로 '너비'또는 '최대 너비'선언을 따르지는 않습니다 (https://www.w3.org/TR/CSS2/tables. html # width-layout). 찾고자하는 너비 정밀도의 경우 셀의'display '값을'inline-block' 또는 뭔가로 변경하는 것이 거의 막혀 있습니다. –

관련 문제