Re: Component-specific javascript in Ajax-Calls

2012-06-04 Thread Thomas Götz
What about this?


public class MyComponent extends Panel {

public MyComponent(String id) {
super(id);
setOutputMarkupId(true);
}

@Override
public void renderHead(IHeaderResponse response) {
response.renderOnDomReadyJavaScript(
$('# + getMarkupId() +  .ttr').tipTip({defaultPosition: 
'right'}););
}

}

   -Tom


On 04.06.2012, 19:21 Jürgen Lind wrote:

 […]
  wicket:script
 $(document).ready(function() {
   $(#markupId .ttr).tipTip({defaultPosition: right});
 });
  /wicket:script
 […]


-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: Component-specific javascript in Ajax-Calls

2012-06-04 Thread Jürgen Lind

Thomas,

thanks for this hint, didn't know about that... So the script is executed every 
time the
component is updated in an ajax call, correct? If so, it would surely solve 
some of my
issues. For longer scripts, I would still prefer to have them in the markup 
file (might be
different if we had multiline strings in Java, btw)

J.

On 04.06.2012 20:32, Thomas Götz wrote:

What about this?


public class MyComponent extends Panel {

 public MyComponent(String id) {
 super(id);
 setOutputMarkupId(true);
 }

 @Override
 public void renderHead(IHeaderResponse response) {
 response.renderOnDomReadyJavaScript(
 $('# + getMarkupId() +  .ttr').tipTip({defaultPosition: 
'right'}););
 }

}

-Tom


On 04.06.2012, 19:21 Jürgen Lind wrote:


[…]
  wicket:script
 $(document).ready(function() {
   $(#markupId .ttr).tipTip({defaultPosition: right});
 });
  /wicket:script
[…]



-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org




Mit freundlichen Grüßen,

Jürgen Lind

--
Dr. Jürgen Lind
iteratec GmbHFon: +49 (0)89 614551-44
Inselkammerstrasse 4 Fax: +49 (0)89 614551-10
82008 Unterhaching   Web: www.iteratec.de

Sitz und Registergericht der iteratec GmbH: München HRB 113 519
Geschäftsführer: Klaus Eberhardt, Mark Goerke, Inge Hanschke, Ralf Menzel

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: Component-specific javascript in Ajax-Calls

2012-06-04 Thread Martin Grigorov
On Mon, Jun 4, 2012 at 10:01 PM, Jürgen Lind juergen.l...@iteratec.de wrote:
 Thomas,

 thanks for this hint, didn't know about that... So the script is executed
 every time the
 component is updated in an ajax call, correct? If so, it would surely solve

For every rerender of the component. That includes non-Ajax (whole
page) requests as well.

 some of my
 issues. For longer scripts, I would still prefer to have them in the markup
 file (might be
 different if we had multiline strings in Java, btw)

For longer scripts you can create JS helpers like:

in some.js:
var helper = function(selector) {
  // something longer here
}

is Some.java:

response.renderOnDomReadyJavaScript(helper($('# + getMarkupId() +'););


 J.


 On 04.06.2012 20:32, Thomas Götz wrote:

 What about this?


 public class MyComponent extends Panel {

     public MyComponent(String id) {
         super(id);
         setOutputMarkupId(true);
     }

     @Override
     public void renderHead(IHeaderResponse response) {
         response.renderOnDomReadyJavaScript(
                 $('# + getMarkupId() +  .ttr').tipTip({defaultPosition:
 'right'}););
     }

 }

    -Tom


 On 04.06.2012, 19:21 Jürgen Lind wrote:

 […]
      wicket:script
         $(document).ready(function() {
           $(#markupId .ttr).tipTip({defaultPosition: right});
         });
      /wicket:script
 […]



 -
 To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
 For additional commands, e-mail: users-h...@wicket.apache.org



 Mit freundlichen Grüßen,

 Jürgen Lind

 --
 Dr. Jürgen Lind
 iteratec GmbH                Fon: +49 (0)89 614551-44
 Inselkammerstrasse 4         Fax: +49 (0)89 614551-10
 82008 Unterhaching           Web: www.iteratec.de

 Sitz und Registergericht der iteratec GmbH: München HRB 113 519
 Geschäftsführer: Klaus Eberhardt, Mark Goerke, Inge Hanschke, Ralf Menzel


 -
 To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
 For additional commands, e-mail: users-h...@wicket.apache.org




-- 
Martin Grigorov
jWeekend
Training, Consulting, Development
http://jWeekend.com

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: Component-specific javascript in Ajax-Calls

2012-06-04 Thread Jürgen Lind

Thanks Martin,

maybe I should have asked before trying to invent my own stuff... Anyway, 
developing
a new wicket tag was some kind of fun as well...

J.

On 04.06.2012 21:10, Martin Grigorov wrote:

On Mon, Jun 4, 2012 at 10:01 PM, Jürgen Lindjuergen.l...@iteratec.de  wrote:

Thomas,

thanks for this hint, didn't know about that... So the script is executed
every time the
component is updated in an ajax call, correct? If so, it would surely solve


For every rerender of the component. That includes non-Ajax (whole
page) requests as well.


some of my
issues. For longer scripts, I would still prefer to have them in the markup
file (might be
different if we had multiline strings in Java, btw)


For longer scripts you can create JS helpers like:

in some.js:
var helper = function(selector) {
   // something longer here
}

is Some.java:

response.renderOnDomReadyJavaScript(helper($('# + getMarkupId() +'););



J.


On 04.06.2012 20:32, Thomas Götz wrote:


What about this?


public class MyComponent extends Panel {

 public MyComponent(String id) {
 super(id);
 setOutputMarkupId(true);
 }

 @Override
 public void renderHead(IHeaderResponse response) {
 response.renderOnDomReadyJavaScript(
 $('# + getMarkupId() +  .ttr').tipTip({defaultPosition:
'right'}););
 }

}

-Tom


On 04.06.2012, 19:21 Jürgen Lind wrote:


[…]
  wicket:script
 $(document).ready(function() {
   $(#markupId .ttr).tipTip({defaultPosition: right});
 });
  /wicket:script
[…]




-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org




Mit freundlichen Grüßen,

Jürgen Lind

--
Dr. Jürgen Lind
iteratec GmbHFon: +49 (0)89 614551-44
Inselkammerstrasse 4 Fax: +49 (0)89 614551-10
82008 Unterhaching   Web: www.iteratec.de

Sitz und Registergericht der iteratec GmbH: München HRB 113 519
Geschäftsführer: Klaus Eberhardt, Mark Goerke, Inge Hanschke, Ralf Menzel


-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org








Mit freundlichen Grüßen,

Jürgen Lind

--
Dr. Jürgen Lind
iteratec GmbHFon: +49 (0)89 614551-44
Inselkammerstrasse 4 Fax: +49 (0)89 614551-10
82008 Unterhaching   Web: www.iteratec.de

Sitz und Registergericht der iteratec GmbH: München HRB 113 519
Geschäftsführer: Klaus Eberhardt, Mark Goerke, Inge Hanschke, Ralf Menzel

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: Component-specific javascript in Ajax-Calls

2012-06-04 Thread Thomas Götz
… or you could put your Javascript code into a template, e.g. like that:


MyComponent.js.tmpl:

$('#${markupId} .ttr').tipTip({defaultPosition: 'right'});

// ... some long Javascript block ….


and in MyComponent.java you'd have:
---
public class MyComponent extends Panel {

public MyComponent(String id) {
super(id);
setOutputMarkupId(true);
}

@Override
public void renderHead(IHeaderResponse response) {
final TextTemplate template = new PackageTextTemplate(
MyComponent.class, MyComponent.js.tmpl);
final MapString, Object variables = new HashMapString, Object();
variables.put(markupId, getMarkupId());
// variables.put(foo, bar);  etc.
response.renderOnDomReadyJavaScript(template.asString(variables));
}

}


   -Tom


On 04.06.2012, 21:10 Martin Grigorov wrote:

 For longer scripts you can create JS helpers like:
 
 in some.js:
 var helper = function(selector) {
  // something longer here
 }
 
 is Some.java:
 
 response.renderOnDomReadyJavaScript(helper($('# + getMarkupId() +'););


-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: Component-specific javascript in Ajax-Calls

2012-06-04 Thread Martin Grigorov
On Mon, Jun 4, 2012 at 10:22 PM, Jürgen Lind juergen.l...@iteratec.de wrote:
 Thanks Martin,

 maybe I should have asked before trying to invent my own stuff... Anyway,
 developing
 a new wicket tag was some kind of fun as well...

I'm glad you have fun but I highly recommend staying away from
IComponentResolver if you can afford that.
Many of the unresolved tickets in Wicket's Jira are related to this.


 J.


 On 04.06.2012 21:10, Martin Grigorov wrote:

 On Mon, Jun 4, 2012 at 10:01 PM, Jürgen Lindjuergen.l...@iteratec.de
  wrote:

 Thomas,

 thanks for this hint, didn't know about that... So the script is executed
 every time the
 component is updated in an ajax call, correct? If so, it would surely
 solve


 For every rerender of the component. That includes non-Ajax (whole
 page) requests as well.

 some of my
 issues. For longer scripts, I would still prefer to have them in the
 markup
 file (might be
 different if we had multiline strings in Java, btw)


 For longer scripts you can create JS helpers like:

 in some.js:
 var helper = function(selector) {
   // something longer here
 }

 is Some.java:

 response.renderOnDomReadyJavaScript(helper($('# + getMarkupId() +'););


 J.


 On 04.06.2012 20:32, Thomas Götz wrote:


 What about this?


 public class MyComponent extends Panel {

     public MyComponent(String id) {
         super(id);
         setOutputMarkupId(true);
     }

     @Override
     public void renderHead(IHeaderResponse response) {
         response.renderOnDomReadyJavaScript(
                 $('# + getMarkupId() + 
 .ttr').tipTip({defaultPosition:
 'right'}););
     }

 }

    -Tom


 On 04.06.2012, 19:21 Jürgen Lind wrote:

 […]
      wicket:script
         $(document).ready(function() {
           $(#markupId .ttr).tipTip({defaultPosition: right});
         });
      /wicket:script
 […]




 -
 To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
 For additional commands, e-mail: users-h...@wicket.apache.org



 Mit freundlichen Grüßen,

 Jürgen Lind

 --
 Dr. Jürgen Lind
 iteratec GmbH                Fon: +49 (0)89 614551-44
 Inselkammerstrasse 4         Fax: +49 (0)89 614551-10
 82008 Unterhaching           Web: www.iteratec.de

 Sitz und Registergericht der iteratec GmbH: München HRB 113 519
 Geschäftsführer: Klaus Eberhardt, Mark Goerke, Inge Hanschke, Ralf Menzel


 -
 To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
 For additional commands, e-mail: users-h...@wicket.apache.org






 Mit freundlichen Grüßen,

 Jürgen Lind

 --
 Dr. Jürgen Lind
 iteratec GmbH                Fon: +49 (0)89 614551-44
 Inselkammerstrasse 4         Fax: +49 (0)89 614551-10
 82008 Unterhaching           Web: www.iteratec.de

 Sitz und Registergericht der iteratec GmbH: München HRB 113 519
 Geschäftsführer: Klaus Eberhardt, Mark Goerke, Inge Hanschke, Ralf Menzel

 -
 To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
 For additional commands, e-mail: users-h...@wicket.apache.org




-- 
Martin Grigorov
jWeekend
Training, Consulting, Development
http://jWeekend.com

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: Component-specific javascript in Ajax-Calls

2012-06-04 Thread Jürgen Lind

Martin,

ok, I will think about going to one of the ideas Thomas suggested. I still like 
the
idea that I have my javascript only in the markup file and nothing in the Java 
class,
though...

Thanks again,

J.


On 04.06.2012 21:25, Martin Grigorov wrote:

On Mon, Jun 4, 2012 at 10:22 PM, Jürgen Lindjuergen.l...@iteratec.de  wrote:

Thanks Martin,

maybe I should have asked before trying to invent my own stuff... Anyway,
developing
a new wicket tag was some kind of fun as well...


I'm glad you have fun but I highly recommend staying away from
IComponentResolver if you can afford that.
Many of the unresolved tickets in Wicket's Jira are related to this.



J.


On 04.06.2012 21:10, Martin Grigorov wrote:


On Mon, Jun 4, 2012 at 10:01 PM, Jürgen Lindjuergen.l...@iteratec.de
  wrote:


Thomas,

thanks for this hint, didn't know about that... So the script is executed
every time the
component is updated in an ajax call, correct? If so, it would surely
solve



For every rerender of the component. That includes non-Ajax (whole
page) requests as well.


some of my
issues. For longer scripts, I would still prefer to have them in the
markup
file (might be
different if we had multiline strings in Java, btw)



For longer scripts you can create JS helpers like:

in some.js:
var helper = function(selector) {
   // something longer here
}

is Some.java:

response.renderOnDomReadyJavaScript(helper($('# + getMarkupId() +'););



J.


On 04.06.2012 20:32, Thomas Götz wrote:



What about this?


public class MyComponent extends Panel {

 public MyComponent(String id) {
 super(id);
 setOutputMarkupId(true);
 }

 @Override
 public void renderHead(IHeaderResponse response) {
 response.renderOnDomReadyJavaScript(
 $('# + getMarkupId() + 
.ttr').tipTip({defaultPosition:
'right'}););
 }

}

-Tom


On 04.06.2012, 19:21 Jürgen Lind wrote:


[…]
  wicket:script
 $(document).ready(function() {
   $(#markupId .ttr).tipTip({defaultPosition: right});
 });
  /wicket:script
[…]





-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org




Mit freundlichen Grüßen,

Jürgen Lind

--
Dr. Jürgen Lind
iteratec GmbHFon: +49 (0)89 614551-44
Inselkammerstrasse 4 Fax: +49 (0)89 614551-10
82008 Unterhaching   Web: www.iteratec.de

Sitz und Registergericht der iteratec GmbH: München HRB 113 519
Geschäftsführer: Klaus Eberhardt, Mark Goerke, Inge Hanschke, Ralf Menzel


-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org








Mit freundlichen Grüßen,

Jürgen Lind

--
Dr. Jürgen Lind
iteratec GmbHFon: +49 (0)89 614551-44
Inselkammerstrasse 4 Fax: +49 (0)89 614551-10
82008 Unterhaching   Web: www.iteratec.de

Sitz und Registergericht der iteratec GmbH: München HRB 113 519
Geschäftsführer: Klaus Eberhardt, Mark Goerke, Inge Hanschke, Ralf Menzel

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org







-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org