2017-09-20 10 views
0

날짜 ("시작 날짜/시간"및 "완료 날짜/시간"필드로 주문할 때)로 테이블 레코드를 주문하기 위해 코드를 수정하려했지만 성공하지 못했습니다. 나는 기존의 SO 솔루션을 사용하여 분류 작업을 시도했지만 그렇게해도 도움이 될 수 있다면 많은 도움을받을 수 있습니다.날짜별로 부트 스트랩 테이블 열 정렬

내 테이블 HTML과 데이터가 제 아약스 파일에 의해 제공되고 있습니다.

HTML :

<div class="box box-primary"> 
    <div class="box-header"> 
     <h3 class="box-title">Existing Log Entries</h3> 
    </div> 

    <form role="form"> 
     <div class="box-body"> 
      <div class="col-md-12" id="div-log-list"></div> 
     </div> 
     <div class="box-footer"> 
     </div> 
    </form> 

    <div style="margin:auto; width:99%;"> 
     <div id="entrieslist-div"></div> 
    </div> 

    <div class="overlay" id="box-loading"> 
     <i class="fa fa-refresh fa-spin"></i> 
    </div> 
</div> 

JS :

$(function() {  
    // Populate log entry table 
    $.ajax({ 
     type: "post", 
     url: "ajax/ajax-populate-log-entries.php", 
     success: function(result){ 
      $('#entrieslist-div').html(result); 
      $('#box-loading').hide(); 
      $("#entrieslist").dataTable(); 
     } 
    }); 
}); 

AJAX :

$counter = 0; 

echo '<table id="entrieslist" class="table table-bordered table-striped dataTable">'; 
echo ' 
     <thead> 
     <tr> 
      <th>Start Date/Time</th> 
      <th>Finish Date/Time</th> 
      <th>Server Name</th> 
      <th>Carried Out By</th> 
      <th>Verified By</th> 
      <th>Authorised By</th> 
      <th>Work Carried Out</th> 
      <th>Work Verification</th> 
      <th>Change Reason</th> 
      <th>Perceived Impact</th> 
      <th>Rollback Process</th> 
     </tr> 
    </thead> 
'; 

echo '<tbody>'; 

foreach($lines as $row) { 
echo '<tr>'; 
echo '    
     <td>'.$row['start_date_time'].'</td> 
     <td>'.$row['finish_date_time'].'</td> 
     <td>'.$row['server_name'].'</td> 
     <td>'.$row['carried_out_by'].'</td> 
     <td>'.$row['verified_by'].'</td> 
     <td>'.$row['authorised_by'].'</td> 
     <td>'.$row['work_carried_out'].'</td> 
     <td>'.$row['work_verified'].'</td> 
     <td>'.$row['change_reason'].'</td> 
     <td>'.$row['perceived_impact'].'</td> 
     <td>'.$row['rollback_process'].'</td> 
'; 
echo '</tr>';} 
$counter++; 

echo '</tbody>'; 
echo '<tfoot> 
     <tr> 
      <th>Start Date/Time</th> 
      <th>Finish Date/Time</th> 
      <th>Server Name</th> 
      <th>Carried Out By</th> 
      <th>Verified By</th> 
      <th>Authorised By</th> 
      <th>Work Carried Out</th> 
      <th>Work Verification</th> 
      <th>Change Reason</th> 
      <th>Perceived Impact</th> 
      <th>Rollback Process</th> 
     </tr> 
    </tfoot>';   
echo '</table>'; 
+0

PHP 파일의 레코드를 정렬 할 수 없으면 결과에 표시 될 수 있습니다. –

+0

문제는 날짜가 datetime 대신 문자열로 렌더링된다는 것입니다. 아마 js 플러그인을 사용하여 [this] (https://jsfiddle.net/3vLLvscr/19/)와 같은 문제를 해결할 수 있습니다. – markpsmith

답변

0

난 당신이 그 뜻에 플러그를 사용할 수 jQuery를 사용하고 볼 수있는 코드에서와 같이 찾고있는 정확한 기능을 제공하고 바퀴를 재발 명할 필요가 없습니다. jQuery dynatable (link) 플러그인을 사용하고 지금까지 후회하지 않았습니다!