2015-06-26 11 views
5

Tôi có ứng dụng Grails 2.4.4 và đang cố triển khai GSP sử dụng jQuery DataTable. Tôi thấy có một số DataTable plugin nhưng trông không có gì lạ và không tương thích với Grails 2.x. Chưa kể, có nên là cách đơn giản bao gồm bất kỳ JS lib nào trong Grails mà không yêu cầu plugin một cách rõ ràng.Cách nhập jQuery DataTables vào Grails 2.4.4

Dưới đây là phần plugins của BuildConfig tôi:

plugins { 
    build ":release:3.0.1" 
    build ":tomcat:7.0.52.1" 

    compile "org.grails.plugins:gson:1.1.4" 
    compile ":rest-client-builder:1.0.3" 
    compile ":yammer-metrics:3.0.1-2" 

    runtime ":jquery:1.11.1" 
    runtime ":cached-resources:1.0" 
    runtime ":resources:1.2.14" 
    compile ":cache-headers:1.1.7" 

    compile ":rest-client-builder:1.0.3" 
    compile ":export:1.6" 
    compile ":standalone:1.2.3" 
    compile ":cache-headers:1.1.7" 
    compile ":scaffolding:2.1.2" 
    compile ':cache:1.1.3' 

    runtime ":resources:1.2.14" 
    runtime ":hibernate:3.6.10.15" 
    runtime ":database-migration:1.4.0" 
    runtime ":jquery:1.11.1" 
} 

Vì lý do ngoài phạm vi của quesiton này, tôi không thể loại bỏ hoặc thay đổi bất kỳ khai báo hiện trong phần plugins, nhưng tôi có thể thêm vào chúng. Tôi đã nghe nói rằng một cái gì đó gọi là "tài sản đường ống" là cách mới mát mẻ của việc thêm lib libs vào một ứng dụng Grails, nhưng tất cả các tài liệu tôi có thể tìm thấy trên đường ống này là mơ hồ và cao cấp. Và tôi không thể tìm thấy bất kỳ ví dụ cụ thể nào về việc sử dụng đường ống này để bao gồm DataTables trong ứng dụng Grails.

Các "! Hello World" phiên bản của một DataTable có vẻ là điều này:

<table id="example" class="display" cellspacing="0" width="100%"> 
    <thead> 
     <tr> 
      <th>Name</th> 
      <th>Position</th> 
      <th>Office</th> 
     </tr> 
    </thead> 

    <tbody> 
     <tr> 
      <td>Tiger Nixon</td> 
      <td>System Architect</td> 
      <td>Edinburgh</td> 
     </tr> 

     ...lots of more rows 
    </tbody> 
</table> 

$(document).ready(function() { 
    $('#example').DataTable(); 
}); 

Vì vậy, tôi hỏi: thế nào đi tôi nhận được (trên) "Hello World" DataTable chạy bên trong một GSP ? Điều gì là cấu hình, plugin, v.v. cụ thể, tôi có cần kết nối để thực hiện công việc này không?

Trả lời

1

nếu tệp DataTable js của bạn được lưu trong thư mục ứng dụng web \ js này, bạn có thể sử dụng thẻ Grails này trong chế độ xem của bạn nơi bạn cần một DataTable.

<g:javascript src="jquery.datatables.min.js" /> 

Tương tự, bạn có thể nhận được tập tin css cần thiết của bạn như vậy

<g:external dir="css" file="jquery.datatables.css" /> 

khi những các tập tin cần được nạp, bạn có thể gọi jQuery chức năng

<g:javascript> 
    $(document).ready(function() { 
     $('#example').DataTable(); 
    }); 
</g:javascript> 
Các vấn đề liên quan