Я знаю, что это может иметь какое-то отношение к фазе, в которую входит каждый.
Если я сделаю это.
<ui:repeat id="repeatChart" varStatus="loop" value="#{viewLines.jflotChartList}" var="jflotChart">
<p:panel>
<jflot:chart height="300" width="925" dataModel="#{jflotChart.dataSet}" dataModel2="#{jflotChart.dataSet2}"
xmin="#{jflotChart.startDateString}"
xmax="#{jflotChart.endDateString}"
shadeAreaStart ="#{jflotChart.shadeAreaStart}"
shadeAreaEnd ="#{jflotChart.shadeAreaEnd}"
lineMark="#{jflotChart.wrapSpec.benchmark}" yMin="#{jflotChart.yMin}" yMax="#{jflotChart.yMax}" />
</p:panel>
<br />
</ui:repeat>
Мой код не будет работать.Отладка JavaScript показывает, что один и тот же идентификатор генерируется для каждой итерации.Я попытался поместить loop.index для создания идентификатора, и это выдает ошибку, в которой говорится, что идентификатор не может быть пустым.
Если я заменяю пользовательский интерфейс: repeat на ac: forEach, он работает нормально.Отладка javascript показывает, что для каждой итерации создается новый идентификатор.
Вот мой вспомогательный код (некоторые из них).
<div id="#{cc.id}_flot_placeholder" style="width:#{cc.attrs.width}px;height:#{cc.attrs.height}px;">
<script type="text/javascript">
//<![CDATA[
$(function () {
var placeholder = $("##{cc.id}_flot_placeholder");
var overviewPlaceholder = $("##{cc.id}_flot_overview");
Идентификатор должен быть другим, чтобы JavaScript могсделать правильное делениеЯ попытался явно определить атрибут id, а затем передать его в качестве идентификатора в коде клиента.Как я уже говорил, это не работает.Спасибо за любую помощь.
** РЕДАКТИРОВАТЬ **
Вот моя проблема.Я не могу использовать clientId в теге div из-за символа двоеточия, очевидно.Я изменил его в javascript, но как бы получить это значение в div.Я не могу получить тег div по идентификатору, потому что мне нужно создать идентификатор.Кажется, я не могу сделать document.write ().Я застрял в этой точке.
<composite:implementation>
<div id="#{cc.clientId}_flot_placeholder" style="width:400px;height:400px;">
<script type="text/javascript">
//<![CDATA[
$(function () {
var clientIdOld = '#{cc.clientId}';
var clientId = clientIdOld.replace(':', '_');
var placeholder = $('#'+clientId+'_flot_placeholder');
var overviewPlaceholder = $('#'+clientId+'_flot_overview');