I was soooo afraid of that :D Just out of curiosity, I see in wicket-autocomplete.js that the onchange event sets "triggerChangeOnHide" to true. How is this handled afterwards ? I mean how does it get from here to calling the ajax ?
Thanks! On Thu, Jan 21, 2016 at 11:50 AM, Sven Meier <[email protected]> wrote: > Hi, > > well, it seems you'll have to strip down your business app until it works > as expected :P > > Have fun > Sven > > > On 21.01.2016 11:47, Zbynek Vavros wrote: > >> I'm not sure we understand each other. >> Such a behavior is already there using AjaxFormComponentUpdatingBehavior >> ("change"). >> This way ajax is triggered ONLY when value is selected from choices >> (either >> by mouse or by keyboard). >> = exactly what I want. >> >> I tested this in small prototype and it works just fine. >> >> My issue is that this doesn't work in our business app so I am trying to >> find why this works in prototype app >> but not in business app (as I mentioned both use wicket-core and >> wicket-extensions 7.0.0). >> >> What I found out is that in both cases (prototype and business app) >> the event in line 178 in wicket-autocomplete.js is invoked as expected. >> The >> issue is that business app does no ajax call after that. >> >> To summarize all I would like is some help with JS debugging since I am >> java-dev and js-noob :( >> >> On Thu, Jan 21, 2016 at 10:35 AM, Martin Grigorov <[email protected]> >> wrote: >> >> OK. I understand now. >>> Looking at wicket-autocomplete.js I see that it triggers "change" event >>> after click on an entry. >>> To support use cases like yours it has to trigger some custom event too, >>> e.g. "itemselected.wa" ("wa" is a sample namespace for >>> wicket-autocomplete). The you can use >>> AjaxFormComponentUpdatingBehavior("itemselected.wa"). >>> Please create a ticket in our JIRA! >>> >>> Martin Grigorov >>> Wicket Training and Consulting >>> https://twitter.com/mtgrigorov >>> >>> On Thu, Jan 21, 2016 at 10:27 AM, Zbynek Vavros <[email protected]> >>> wrote: >>> >>> What I mean by final value is value selected from list of options. >>>> The OnChangeAjaxBehavior you suggested will do ajax on every key stroke. >>>> So lets say my autocomplete display list of cities. >>>> I want the method called when user selects a value "London" from list. >>>> Not on each stoke "L", "Lo", "Lon"... >>>> >>>> As I said, this is because I need to use the selected value for >>>> >>> additional >>> >>>> processing. >>>> >>>> On Thu, Jan 21, 2016 at 9:56 AM, Martin Grigorov <[email protected]> >>>> wrote: >>>> >>>> Hi, >>>>> >>>>> How do you decide when "final" value is entered ? >>>>> You can use Ajax throttling to avoid sending requests on every typed >>>>> character but only after N ms after the last typed character. See >>>>> AjaxRequestAttributes#setThrottling() for this option. >>>>> There is no magic that will read your users' mind to tell whether an >>>>> entered value is final or not. >>>>> >>>>> Martin Grigorov >>>>> Wicket Training and Consulting >>>>> https://twitter.com/mtgrigorov >>>>> >>>>> On Thu, Jan 21, 2016 at 9:48 AM, Zbynek Vavros <[email protected] >>>>> wrote: >>>>> >>>>> Hey, >>>>>> >>>>>> sorry for not explaining properly... >>>>>> I already tried that and in this case the the ajax call is triggered >>>>>> on "inputchange" as well, meaning on every key stroke. >>>>>> >>>>>> This is not desirable because we use the value of this autocomplete >>>>>> >>>>> field >>>> >>>>> to calculate value of another fields in form. This calculation should >>>>>> happen only >>>>>> when "final" value is selected. >>>>>> >>>>>> Zbynek >>>>>> >>>>>> On Thu, Jan 21, 2016 at 9:27 AM, Martin Grigorov < >>>>>> >>>>> [email protected] >>> >>>> wrote: >>>>>> >>>>>> Hi, >>>>>>> >>>>>>> It is not very clear what exactly is the issue. >>>>>>> As far as I understand the problem is that the Ajax call is >>>>>>> >>>>>> triggered >>> >>>> only >>>>>> >>>>>>> when you navigate to another form field. If this is the issue then >>>>>>> >>>>>> try >>>> >>>>> by >>>>> >>>>>> using OnChangeAjaxBehavior instead of >>>>>>> >>>>>> AjaxFormComponentUpdatingBehavior. >>>>> >>>>>> Martin Grigorov >>>>>>> Wicket Training and Consulting >>>>>>> https://twitter.com/mtgrigorov >>>>>>> >>>>>>> On Wed, Jan 20, 2016 at 2:44 PM, Zbynek Vavros < >>>>>>> >>>>>> [email protected] >>>> >>>>> wrote: >>>>>>> >>>>>>> Hi, >>>>>>>> >>>>>>>> in our project we have an AutoCompleteTextField with >>>>>>>> AjaxFormComponentUpdatingBehavior ("change" event) attached. >>>>>>>> >>>>>>>> Small prototype I did proves that HTTP POST is done when an item >>>>>>>> >>>>>>> is >>> >>>> selected from choices (either by mouse or keyboard). But for some >>>>>>>> >>>>>>> reason >>>>>> >>>>>>> the same code doesn't work in our project. It is required to move >>>>>>>> >>>>>>> focus >>>>> >>>>>> to >>>>>>> >>>>>>>> another component for the POST to be send. The behavior works >>>>>>>> >>>>>>> like >>> >>>> if >>>> >>>>> "blur" type of event is set but there is "change". >>>>>>>> >>>>>>>> I'm quite new to Wicket so I tried to compare all HTML & JS files >>>>>>>> >>>>>>> but >>>> >>>>> they >>>>>>> >>>>>>>> all seem to be the same. >>>>>>>> Is there some other debug I can use to find what is going on (I >>>>>>>> >>>>>>> suspect >>>>> >>>>>> something in JS but JS isn't my specialty) ? >>>>>>>> >>>>>>>> >>>>>>>> Oh and both wicket-core and wicket-extension is 7.0.0. >>>>>>>> >>>>>>>> Thanks, >>>>>>>> Zbynek >>>>>>>> >>>>>>>> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > >
