Ответ 1
вы устанавливаете больше стилей с помощью:
#{set 'moreStyles'}
#{stylesheet 'main.css' /}
#{/set}
как скрипты:
#{set 'moreScripts'}
#{script 'base64.js'/}
#{/set}
В файле main.html
в проекте по умолчанию, созданном Play!, есть эта строка:
#{get 'moreStyles' /}
Я понимаю, что если мне нужно добавить больше стилей, на мой взгляд script, я должен использовать
#{set tag:'value' /}
где tag
должно быть moreStyles
, но, похоже, worng устанавливает значение в полный тег HTML <link>
. И что произойдет, если в представлении нужно добавить больше стилей или скриптов?
Спасибо!
вы устанавливаете больше стилей с помощью:
#{set 'moreStyles'}
#{stylesheet 'main.css' /}
#{/set}
как скрипты:
#{set 'moreScripts'}
#{script 'base64.js'/}
#{/set}
простое использование тега # {set} перезапишет предыдущие значения.
то есть, если вы выдаете
#{set 'moreStyles'}xxx#{/set}
а затем
#{set 'moreStyles'}yyy#{/set}
то
#{get 'moreStyles' /}
будет возвращать только yyy
чтобы достичь того, что вы хотите, чтобы
#{set 'moreStyles'}
#{get 'moreStyles' /}
#{stylesheet 'main.css' /}
#{/set}
а затем таблица стилей main.css будет добавлена к предыдущему значению morestyles
В аналогичной ситуации я создал собственный тег # {addStyle}
#{set 'moreStyles'}
<link rel="stylesheet" type="text/css" media="screen" href="#" onclick="location.href='http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.14/themes/ui-lightness/jquery-ui.css'; return false;" charset="${_response_encoding}"/>
#{/set}
#{set 'moreScripts'}
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.14/jquery-ui.min.js" type="text/javascript" charset="${_response_encoding}"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.14/i18n/jquery.ui.datepicker-zh-CN.js" type="text/javascript" charset="${_response_encoding}"></script>
<script language="javascript">
$(document).ready(function() {
$('.datepicker').datepicker();
});
</script>
#{/set}