Niceform js с Grails 1.3.7

#javascript #css #grails #gsp

#javascript #css #grails #gsp

Вопрос:

Я собираюсь использовать дизайн из niceform css (http://www.emblematiq.com/lab/niceforms/demo/v20/niceforms.html ) … в моем веб-приложении. В данный момент я использую grails 1.3.7.

Я обнаружил, что в niceform.js в нем есть переменная: var imagesPath = «../css/img/»;

кажется, мне нужно указать в нем правильный путь, у вас есть какие-нибудь идеи, как изменить этот путь с помощью grails? Я хотел бы иметь возможность использовать динамические ссылки, чтобы это могло: var imagesPath = «${grailsPath}/css / img /»;

Ответ №1:

Лично я бы поместил изображения в каталог niceform в каталоге изображений Grails. Затем поместите код .js в шаблон GSP

 <g:javascript>
  var imagesPath = "${resource(dir:'images/niceform')";

  // rest of JS code here
</g:javascript>
  

Предполагая, что этот шаблон называется ‘_foo.gsp’, используйте <g:render template="foo"/> там, где в противном случае вы бы включили файл .js.

Обновить

Если вы используете новый плагин resources (а вы должны им быть), используйте это вместо:

 <r:script>
  var imagesPath = "${resource(dir:'images/niceform')";

  // rest of JS code here
</r:script>
  

Ответ №2:

Мои мысли:

  1. поместить niceform.js в свой проект и настройте его (и переименуйте в niceform.custom.js );
  2. направьте свои ресурсы, необходимые для niceform.js в imagesPath;
  3. определите глобальную переменную js imagesPath и используйте ее в файлах js (см. Пространства имен в javascript).

Ответ №3:

Попробуйте использовать ресурс, подобный этому: ${resource(dir:’css’,file:’main.css’)}