Hi Pieter,

If you have multiple panel, they all have the same html-id (#resizable).
(and so jquery statement $("#resizable") will only take the first one)

What you need is to have different (rendered) html ids for each panels. So,
you can simply do:
add(new ResizableBehavior("#" + this.setOutputMarkupId(true).getMarkupId(),
options));

Which can be shortened as:
add(new ResizableBehavior(JQueryWidget.getSelector(this), options));

Hope this helps,
Sebastien.

On Sun, Jan 27, 2013 at 5:19 PM, Pieter Claassen <pie...@musmato.com> wrote:

> I have multiple panels on a page, each once constructed as follows:
>
> * public EditableQuestionPanel(String id, final QuestionBaseWebModel
> questionBaseWebModel, final TemplateWebModel templateWebModel, final
> QuestionEditPanel panel) {*
> *        super(id);*
> *        Options options = new Options();*
> *        options.set("minWidth", 350);*
> *        options.set("minHeight", 85);*
> *        add(new ResizableBehavior("#resizable",options));*
>
> Here is the HTML for each panel.
>
> *<wicket:panel>*
> *    <div id="resizable" class="ui-widget-content">*
> *        <div class="question" wicket:id="holder">*
> *            <a href="#" wicket:id="editor">*
> *                <div id="label" wicket:id="questionDisplayPanel">*
> *                </div>*
> *            </a>*
> *                 <span wicket:id="navpanel"></span>*
> *        </div>*
> *    </div>*
> *</wicket:panel>*
>
>
> I want them each to be resizable but only the first panel ever is.
>
> I am using wicket-jquery-ui. Any idea what I am doing wrong here. Do I have
> to give each pane a unique html id attribute?
>
> Pieter
>

Reply via email to