2015-06-26 3 views
5

У меня есть приложение Grails 2.4.4 и я пытаюсь реализовать GSP, который использует jQuery DataTable. Я вижу, есть старыйDataTable plugin, но он выглядит невосприимчивым и несовместимым с Grails 2.x. Не говоря уже, есть ought, чтобы просто включить любой JS lib в Grails, явно не требуя для него плагина.Как импортировать данные jQuery DataTables в Grails 2.4.4

Вот plugins часть моего BuildConfig:

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" 
} 

По причинам, выходящим за рамки этого quesiton, я не могу удалить или изменить существующие объявления в разделе plugins, но я могу добавить их. Я слышал, что что-то называемое «конвейером активов» - это новый классный способ добавления JS-библиотек в приложение Grails, но вся литература, которую я могу найти на этом конвейере, является неопределенной и высокоуровневой. И я не могу найти реальных реальных примеров использования этого конвейера для включения DataTables в приложение Grails.

"! Hello World" версия DataTable, кажется, это:

<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(); 
}); 

Так я спрашиваю: Как идти я получаю (выше) "Hello World" DataTable работает внутри GSP ? Что нужно Конфигурации, плагины и т. Д. Нужно ли подключаться к этой работе?

ответ

1

Если ваши файлы данных DataTable сохранены в этом каталоге web-app \ js, вы можете использовать этот тег Grails в своем представлении, где вам нужен DataTable.

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

Кроме того, вы можете получить нужный файл CSS в качестве такого

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

раз загружаются те необходимые файлы, вы можете вызвать функцию JQuery

<g:javascript> 
    $(document).ready(function() { 
     $('#example').DataTable(); 
    }); 
</g:javascript>