yeah i could live with this solution, if it works for all kind of tags.

johan


On 3/19/07, Matej Knopp <[EMAIL PROTECTED]> wrote:

Indeed, it wil fail. but I kind of fail to see practical value of this
behavior. To me it looks much more useful to be able to
setVisible(false) and later setVisible(true), without having to worry
about wrapping the element (which can be rather tricky with element
like td).

Perhaps we could have a flag on webmarkupcontainer, that would control
how should it render when not visible? I mean, one more flag certainly
won't harm. And it wouldn't break any of the existing code. All it
would do is that when a component is not visible, it will render as
<componentTagName style="display:none"
id="componentId"></componentTagName>.

-Matej

On 3/19/07, Martijn Dashorst <[EMAIL PROTECTED]> wrote:
> Currently everybody assumes (correctly) that the element is completely
> removed (Ajax and non-Ajax), i.e. not present in the final markup.
> This means that scripts that iterate through the dom, or check for the
> document.getElementById() == null will fail if we implement this.
>
> I *strongly* discourage changing this behavior.
>
> Martijn
>
> On 3/19/07, Matej Knopp <[EMAIL PROTECTED]> wrote:
> > Will it? This seems to be actually quite a smart workaround. How
> > exactly will this break existing clients? Only thing i'm concerned
> > about is the validity of output markup. but imho when we preserve the
> > original tag names, e.g. td will render as td, it should be all right.
> >
> > -Matej
> >
> > On 3/19/07, Martijn Dashorst <[EMAIL PROTECTED]> wrote:
> > > So you mean:
> > >
> > >     Label l = Label("foo", "hello");
> > > renders:
> > >     <span wicket:id="foo">hello</span>
> > >
> > > ... some ajax stuff, or a normal page render:
> > >
> > >     l.setVisible(false);
> > > renders:
> > >     <span wicket:id="foo" style="display:none"></span>
> > > ?
> > >
> > > This can and will break existing clients in a very nasty manner,
> > > because the markup id is still present in the final markup.
> > >
> > > Martijn
> > >
> > > On 3/19/07, Vincent Demay <[EMAIL PROTECTED]> wrote:
> > > > Johan Compagner a écrit :
> > > > >> > Also always just rendering the component but use the style to
make in
> > > > >> > invisible
> > > > >> > could be a security problem. So that can't be the default.
> > > > >>
> > > > >> What do you mean by security problem?
> > > > >
> > > > >
> > > > >
> > > > > If the the component that is  set to none visible is none
visible
> > > > > because of
> > > > > security
> > > > > So it has data that never should be send to the browser because
the
> > > > > user is
> > > > > not allowed
> > > > > to see it.
> > > >
> > > > But data is never send to the user because a none visible
component will
> > > > be render as an empty tag, so without data
> > > >
> > > >
> > >
> > >
> > > --
> > > Learn Wicket at ApacheCon Europe: http://apachecon.com
> > > Join the wicket community at irc.freenode.net: ##wicket
> > > Wicket 1.2.5 will keep your server alive. Download Wicket now!
> > > http://wicketframework.org
> > >
> >
>
>
> --
> Learn Wicket at ApacheCon Europe: http://apachecon.com
> Join the wicket community at irc.freenode.net: ##wicket
> Wicket 1.2.5 will keep your server alive. Download Wicket now!
> http://wicketframework.org
>

Reply via email to