Изменить тему сетки jquery (местоположение ui.jqgrid.css) в struts2 - PullRequest
5 голосов
/ 05 января 2012

На моей веб-странице есть компонент сетки jquery. Я хочу изменить файл CSS, который он использует. Я установил его в теге jj: head:

<sj:head jqueryui="true" jquerytheme="custom-theme" customBasepath="css"/>

И я вижу этот HTML-тег на моей веб-странице:

<link type="text/css" href="css/custom-theme/jquery-ui.css" rel="stylesheet" id="jquery_theme_link">

Путь к файлам стилей для компонента jquery-grid равен

<link rel="stylesheet" type="text/css" href="/appname/struts/themes/ui.jqgrid.css">

Я хочу, чтобы этот путь был таким:

<link rel="stylesheet" type="text/css" href="css/custom-theme/ui.jqgrid.css">

Где я могу установить расположение jssery сетки css файла?

Ответы [ 2 ]

1 голос
/ 11 января 2014

Вы можете сделать как:

<sjg:grid ... onGridCompleteTopics="myCssLoaderTopic" ....> 

Тогда в ваших темах

<script>
    $.subscribe('loadCustomCss', function(event,data){            
        $.struts2-jquery.requireCss(cssFile, basePath); 
    });
</script>

Пожалуйста, обратитесь к: https://groups.google.com/forum/#!topic/struts2-jquery/Aurqeuwhiuo

1 голос
/ 11 ноября 2013

У меня была такая же проблема, решение было переопределить CSS после завершения загрузки сетки.

<sjg:grid 
    ...
    onCompleteTopics="loadCustomCss"
    ...
/>

Затем в вашем JSP

<script>
    $.subscribe('loadCustomCss', function(event,data){
         $('head').append( $('<link rel="stylesheet" type="text/css" />').attr('href', '../css/grid.css') );
    });
</script>

Где grid.css вашПользовательский CSS, вы можете скопировать CSS, предоставляемый плагином, и это особенно полезно, когда вы загрузили его как зависимость Maven.

...