Perfect - thanks a lot for the hint!

best regards, Chris

> Am 19.04.2015 um 22:43 schrieb Sven Meier <[email protected]>:
> 
> Hi Christ,
> 
> for AjaxFormChoiceComponentUpdatingBehavior it is important that the click 
> happens on one of the "radio" elements.
> If the selection is cancalled, we can just use the first radio:
> 
>        String name = formComponent.getInputName();
> 
> response.render(OnDomReadyHeaderItem.forScript(String.format("$('input[name=\"%s\"]').rating({
>  callback: function(value, link) { var option = this; if (value == undefined) 
> { option = $('input[name=\"%s\"]')[0]; } $(option).trigger('click'); }});", 
> name, name)));
> 
> Note that I had to remove a 'workaround' from the plugin's soure to make this 
> work (line 181 ff):
> 
>                // backward compatibility, form element to plugin
> //                input.on('change.rating',function(event){
> //                    if(event.selfTriggered) return false;
> //                    $(this).rating('select');
> //                });
> 
> I don't understand what that is for - but that isn't a Wicket question ;).
> 
> Regards
> Sven
> 
> 
> On 19.04.2015 20:46, Chris wrote:
>> Hi Sven & all,
>> 
>> I would also like to get a callback for the cancel button.
>> 
>> I tried following adjustment, but in this case the 
>> #onUpdate(AjaxRequestTarget target) method is called multiple times and in 
>> the end, all stars are colored/enabled (instead of all stars greyed out).
>> 
>> response.render(OnDomReadyHeaderItem.forScript(String.format("$('%s').rating({
>>  callback: function(value, link) {      if (typeof $(this).attr('id') == 
>> 'undefined') {$('%s').trigger('click');} else {$(this).trigger('click');} 
>> }});", selector, selector)));
>> 
>> When the cancel rating link is clicked the id is undefined. I cannot make a 
>> JS click event on this div, maybe as it is added later via the JS?
>> http://stackoverflow.com/questions/1551102/jquery-star-rating-plugin-and-cancel-rating-button
>>  
>> <http://stackoverflow.com/questions/1551102/jquery-star-rating-plugin-and-cancel-rating-button>
>> 
>> thanks a lot,
>> Chris
>> 
>> 
>> 
>> 
>>> Am 19.04.2015 um 15:26 schrieb Chris <[email protected]>:
>>> 
>>> Sven, you are great!
>>> 
>>> Your solution works perfect.
>>> 
>>> Thanks a lot for your help!!
>>> Chris
>>> 
>>>> Am 19.04.2015 um 11:55 schrieb Sven Meier <[email protected]>:
>>>> 
>>>> Hi Chris,
>>>> 
>>>> I've opened a pull request.
>>>> 
>>>> Hope this helps
>>>> Sven
>>>> 
>>>> 
>>>> On 19.04.2015 02:43, Chris wrote:
>>>>> Hi Sven & all,
>>>>> 
>>>>> when using the JS Star Rating plugin 
>>>>> (https://www.fyneworks.com/jquery/star-rating 
>>>>> <https://www.fyneworks.com/jquery/star-rating>, star images instead of 
>>>>> radio boxes), the #AjaxFormChoicecomponentUpdatingBehaviour does not work 
>>>>> anymore.
>>>>> 
>>>>> I have created a sample project based on the wicket-example 
>>>>> „RadioGroupPage“ and put it here: https://github.com/cat1000/StarRating 
>>>>> <https://github.com/cat1000/StarRating>
>>>>> 
>>>>> It would be great if someone could have a look the conflict.
>>>>> 
>>>>> Thanks a lot,
>>>>> Chris
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>>> Am 18.04.2015 um 23:43 schrieb Chris <[email protected]>:
>>>>>> 
>>>>>> Hi Sven,
>>>>>> 
>>>>>> have you added the AjaxFormChoicecomponentUpdatingBehaviour in this 
>>>>>> example to the group?
>>>>>> 
>>>>>> group.add(new AjaxFormChoiceComponentUpdatingBehavior() {
>>>>>>           protected void onUpdate(AjaxRequestTarget target) {
>>>>>>       // Ajax actions here
>>>>>>       System.out.println("The selected value is " + 
>>>>>> getComponent().getDefaultModelObjectAsString());
>>>>>>   }
>>>>>> });
>>>>>> 
>>>>>> Thanks, Chris
>>>>>> 
>>>>>>> Am 18.04.2015 um 13:24 schrieb Sven Meier <[email protected]>:
>>>>>>> 
>>>>>>> Looks good.
>>>>>>> 
>>>>>>> I've just added an AjaxFormChoiceComponentUpdatingBehavior to 
>>>>>>> wicket-examples' RadioGroupPage and it worked as expected.
>>>>>>> 
>>>>>>> Which Wicket version? Can you create a quickstart?
>>>>>>> 
>>>>>>> Have fun
>>>>>>> Sven
>>>>>>> 
>>>>>>> On 18.04.2015 13:19, Chris wrote:
>>>>>>>> The html is as follows:
>>>>>>>> 
>>>>>>>> <wicket:panel>
>>>>>>>>   <form wicket:id="form" class="form">
>>>>>>>>      <div class="rating" wicket:id="group">
>>>>>>>>             <input wicket:id="radio1" type="radio"/>
>>>>>>>>              <input wicket:id="radio2" type="radio"/>
>>>>>>>>             ...
>>>>>>>>      </div>
>>>>>>>>   </form>
>>>>>>>> </wicket:panel>
>>>>>>>> 
>>>>>>>> best regards, Chris
>>>>>>>> 
>>>>>>>> 
>>>>>>>>> Am 18.04.2015 um 13:14 schrieb Chris <[email protected]>:
>>>>>>>>> 
>>>>>>>>> Hi Sven,
>>>>>>>>> 
>>>>>>>>> the form is added to a panel.
>>>>>>>>> 
>>>>>>>>> Chris
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>> Am 18.04.2015 um 11:26 schrieb Sven Meier <[email protected]>:
>>>>>>>>>> 
>>>>>>>>>> Hi,
>>>>>>>>>> 
>>>>>>>>>> is your RadioGroup is bound to <wicket:container> in your markup?
>>>>>>>>>> 
>>>>>>>>>> Sven
>>>>>>>>>> 
>>>>>>>>>> On 18.04.2015 07:00, Chris wrote:
>>>>>>>>>>> Hi all,
>>>>>>>>>>> 
>>>>>>>>>>> I have a radio group with different radio choices and I would like 
>>>>>>>>>>> to add ajax behavior to the group.
>>>>>>>>>>> With the method #AjaxFormChoiceComponentUpdatingBehavior, the 
>>>>>>>>>>> #onUpdate is never called currently.
>>>>>>>>>>> 
>>>>>>>>>>> How to fix this?
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> Form form = new Form("form");
>>>>>>>>>>> RadioGroup<RadioChoice> radioGroup = new 
>>>>>>>>>>> RadioGroup<RadioChoice>("group", new Model<RadioChoice>() {...}
>>>>>>>>>>> 
>>>>>>>>>>> Radio<RadioChoice> radio1 = new Radio<RadioChoice>("radio1", new 
>>>>>>>>>>> Model<RadioChoice>(1));
>>>>>>>>>>> Radio<RadioChoice> radio2 = new Radio<RadioChoice>("radio2", new 
>>>>>>>>>>> Model<RadioChoice>(2));
>>>>>>>>>>> radioGroup.add(radio1);
>>>>>>>>>>> radioGroupd.add(Radio2);
>>>>>>>>>>> 
>>>>>>>>>>> form.add(radioGroup);
>>>>>>>>>>> 
>>>>>>>>>>> radioGroup.add(new AjaxFormChoiceComponentUpdatingBehavior() {
>>>>>>>>>>>          protected void onUpdate(AjaxRequestTarget target) {
>>>>>>>>>>>              // Ajax actions here
>>>>>>>>>>>          }
>>>>>>>>>>> });
>>>>>>>>>>> 
>>>>>>>>>>> Thanks, Chris
>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>> To unsubscribe, e-mail: [email protected]
>>>>>>>>>>> For additional commands, e-mail: [email protected]
>>>>>>>>>>> 
>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>> To unsubscribe, e-mail: [email protected]
>>>>>>>>>> For additional commands, e-mail: [email protected]
>>>>>>>>>> 
>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>> To unsubscribe, e-mail: [email protected]
>>>>>>>>> For additional commands, e-mail: [email protected]
>>>>>>>>> 
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>> To unsubscribe, e-mail: [email protected]
>>>>>>>> For additional commands, e-mail: [email protected]
>>>>>>>> 
>>>>>>> ---------------------------------------------------------------------
>>>>>>> To unsubscribe, e-mail: [email protected]
>>>>>>> For additional commands, e-mail: [email protected]
>>>>>>> 
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: [email protected]
>>>>>> For additional commands, e-mail: [email protected]
>>>>>> 
>>>> 
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: [email protected]
>>>> For additional commands, e-mail: [email protected]
>>>> 
>>> 
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [email protected]
>>> For additional commands, e-mail: [email protected]
>>> 
>> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to