Калитка: рендеринг / обновление RepeatingView без HTML-тега
Итак, у меня есть FormControl внутри Repeating View, и я установил HTML для Repeating view как Wicket:container
Я пытаюсь обновить formControl, но, поскольку я удаляю теги калитки в выводе, это дает ошибку JS.
я знаю калитку: контейнер не может быть обновлен. но я не могу обновить контроль внутри него. Я пробовал настройку
control.setOutputMarkupPlaceholderTag(true);
control.setOutputMarkupId(true);
И HTML это как-то так
<form wicket:id="form">
<wicket:container wicket:id="repeatingContainer">
</wicket:container>
</form>
вот ошибка, которую я получаю
Cannot bind a listener for event "change" on element "id1a3" because the element is not in the DOM
я хочу удалить HTML-тег repeatingContainer из вывода, чтобы он соответствовал макету формы начальной загрузки.
Обновление: этот код находится внутри RepeaterView
<wicket:panel>
<div wicket:id="componentGroup">
<wicket:child/>
</div>
</wicket:panel>
Этот код калитки ребенка
<div wicket:id="labelContainer">
<label wicket:id="label"></label>
</div>
<div wicket:id="controlContainer" class="control-container">
<input wicket:id="input"/>
</div>
1 ответ
Хорошо, так что я могу справиться с этим. Я обновил компонент Group div до wicket:container и оставил Repeater как div. Так что теперь я могу обновить. и это работает хорошо.
Так вот как это будет выглядеть
<form wicket:id="form">
<div wicket:id="repeatingContainer">
<wicket:container wicket:id="componentGroup">
<div wicket:id="labelContainer">
<label wicket:id="label"></label>
</div>
<div wicket:id="controlContainer" class="control-container">
<input wicket:id="input"/>
</div>
</wicket:container>
</div>
</form>