2017-01-03 6 views
0

부품 번호가 3 개의 개별 셀로 반환되는 FooTable이 있습니다. 그들을 하나의 셀에 결합하고 싶지만 FooTable에서 포맷터와 구문 분석기가 어떻게 작동하는지 확신 할 수 없습니다. 내 테이블 HTML은 단지 빈 테이블이며, 모든 것은 자바 스크립트로 처리됩니다. 이 일을 어떻게 하죠?다중 열을 하나의 footable에 결합하려면 어떻게합니까?

$(document).ready(function() { 
      jQuery(function($){ 
       $('.table').footable({ 
       "expandFirst": false, 
       "columns": [ 
        { "name": "PartID", "title":"PartID", "visible":false }, 
        {"formatter": function(value){ 
         return //I'm thinking this is where the code would go to join the next 3 columns? in the format ##.###.## 
        }}, 
        { "name": "PartCategory", "title": "PC" }, 
        { "name": "PartNumber1", "title": "PN1" }, 
        { "name": "PartNumber2", "title": "PN2", }, 
        { "name": "PartName", "title": "Name", }, 
        { "name": "DescShort", "title": "Description", }, 
        { "name": "SupplierName", "title": "Supplier", }, 
        { "name": "SupplierPartNumber", "title": "Supplier Part #", } 
       ], 
       "rows": $.getJSON("../dist/scripts/testGetParts.php") 
       }); 
      }); 
     }); 

답변

1

당신은 간단하게 추가 할 수 data-hide="all" :

{ "name": "", "title": "", data-hide="all"}, 
{ "name": "", "title": "", data-hide="all"}, 
{ "name": "Part Info", "title": "Part Information" } 

(당신이 잘되는) php 사람들을 병합 단 하나 COL 여기에 그들에게 보여 당신의 dataset 및 Voila.

dataset을 변경할 수있는 경우 더 간단한 버전은 columns을 전혀 추가하지 않는 것입니다.

서버 측 코드를 변경할 수 없거나 변경하지 않으려면 데이터를 가져 와서 js으로 변경 한 다음 나중에 행에 바인드하십시오.

var rows = $.getJSON("../dist/scripts/testGetParts.php"); 
foreach(row in rows) { 
    //merge those cols here in the third one 
} 

: 그리고

jQuery(function($){ 
    $('.table').footable({ 
    "expandFirst": false, 
    "columns": [ 
     { "name": "PartID", "title":"PartID", "visible":false }, 
     { "name": "PartCategory", "title": "PC", data-hide="all" }, 
     { "name": "PartNumber1", "title": "PN1", data-hide="all"}, 
     { "name": "Part Info", "title": "Part information" }, 
     { "name": "PartName", "title": "Name", }, 
     { "name": "DescShort", "title": "Description", }, 
     { "name": "SupplierName", "title": "Supplier", }, 
     { "name": "SupplierPartNumber", "title": "Supplier Part #", } 
    ], 
    "rows": rows 
    }); 
}); 
+0

아직 포매터로이 작업을 수행 할 수 있다고 확신하지만이 솔루션은 정상적으로 작동합니다. 제안 된대로 데이터 형식을 변경하는 것이 이상적이지만 다른 곳에서는 별도의 필드가 필요할 수도 있습니다. – Puzzle84

+0

필자는 PHP를 수정하여 연결 열을 추가했습니다. 나는 아직도 그것이 일종의 해커라고 느낀다. 그리고 나는 포매터에서 결국 그것을 이해하고 싶다. 그러나 이것은 지금은 효과가있다. 감사! – john

-1

당신이 어떻게 할 수 있는지 잘 모르겠다면, 검도에서 그렇게 할 것입니다. 이 세 가지의 처음 두 열에

$(document).ready(function() { 
     jQuery(function($){ 
      $('.table').footable({ 
      "expandFirst": false, 
      "columns": [ 
       { "name": "PartID", "title":"PartID", "visible":false }, 
       { "title":"PartNumber", formatter: function(data){ 
        return data.PartCategory +"."+ data.PartNumber1 +"." + PartNumber2; 
       }}, 
       { "name": "PartName", "title": "Name", }, 
       { "name": "DescShort", "title": "Description", }, 
       { "name": "SupplierName", "title": "Supplier", }, 
       { "name": "SupplierPartNumber", "title": "Supplier Part #", } 
      ], 
      "rows": $.getJSON("../dist/scripts/testGetParts.php") 
      }); 
     }); 
    }); 
+0

당신이 자신의 문서에서 직접 헤더 – Yaser

+0

의 행 섹션에서 $ .getJSON에서 오는 데이터에 액세스 할 수 없습니다 헤더 데이터입니다 다음을 제공 할 수있게하려면 셀 내용에 제공된 값과 다른 값으로 셀에 직접 데이터 값 특성을 적용하고 열 형식 기가 값을 셀 내용으로 변환하도록합니다. – Puzzle84

+0

시도했지만 주사위가 없습니다. – john