Hi Peter, My Logger object is using internally logging.getConsoleLogger(). Is is also logging some stats to a div in the document. Not really very useful, so I will probably get rid of it and use the plain console logger as you mention. when I submit my code for inclusion I will definitely get rid of those calls.
And please, feel free to bug me as often as you feel like. My code sure needs some improvement. I will try to get this example complete this week and will submit it for inclusion in the pyjs examples. What is the preferred way for this? Should I send a github pull request? Thanks, Daniel On Sunday, July 8, 2012 9:52:20 AM UTC+2, peter.bittner wrote: > > Daniel, > > after you've got this working, a question: What is this "Logger" thing > you're using? > > There is a Pyjs logging module, and logging should be easy (and shorter) > using it the following way: > > from pyjamas import logging > log = logging.getConsoleLogger() # other loggers: Alert, Append, Print ... > # ... > log.error("Hello, here is an %s error", err_name) > > > See the (not yet beautiful, but evolving) website for more explanations: > http://pyjs.org/Developing.html > > Just my two cents / sorry for bugging you, > Peter > > > 2012/7/7 istvan.vago <istvan.v...@gmail.com> > >> Daniel, >> try this: >> >> from __pyjamas__ import wnd >> >> class MySelect2TaggingComponent(HTML): >> >> def change(self): >> ... >> >> >> wnd().change=change >> >> The change method will be accessible from jQuery as "change". >> >> Istvan >> >> 2012. július 6., péntek 11:51:59 UTC+2 időpontban Daniel Gonzalez a >> következőt írta: >> >>> Hi all, >>> >>> I am completing my integration of a jQuery component with pyjs, which I >>> will share with you as soon as is ready. We could add that to the examples >>> dir. >>> >>> Currently I am trying to pass a jQuery event up to my python code. The >>> jQuery component is a Select2 element, which fires a change event whenever >>> the user changes the content. I have verified that this is working by >>> calling a pure javascript function, like this: >>> >>> class MySelect2TaggingComponent(**HTML): >>> >>> ... >>> >>> def setup_show(self): >>> show = ''' >>> function show() { >>> var e=parent.jQuery("<div style='background-color:yellow >>> **;'>change fired</div>"); >>> parent.jQuery("#%s").append(e)**; >>> e.animate({opacity:0}, 100000, 'linear', function() { >>> e.remove(); }); >>> };''' % (self.myid) >>> myjs = '%s parent.jQuery("#%s").bind("**change", show);' % (show >>> , self.myid) >>> Logger("**MySelect2TaggingComponent > setup_show", "Now calling >>> JS: %s" % (myjs)) >>> JS(""" eval(@{{myjs}}) """) >>> >>> As you can see here, what I am doing is to define a show function and >>> bind it to the element change event. This works. >>> >>> Now instead of calling the javascript show function, I want to call a >>> pyjs "change" function, which will perform data processing and will send >>> the data to the server. >>> >>> I would like to define a change method like this: >>> >>> class MySelect2TaggingComponent(HTML**): >>> >>> >>> def change(self): >>> ... >>> >>> >>> How can I bind the javascript "change" event to this change method? >>> >>> Thanks, >>> Daniel >>> >> >