[RichWidgets] Input_Autocomplete problem when clearing the text

Hello,


I've found an issue for the Input_AutoComplete widget from SilkUI and I'm wondering if anyone can help me overcome this. We have a screen that uses the AutoComplete widget and based on the selection made some forms are filled in with specific data.


The problem is that whenever the user clears the text from the input (linked to the autocomplete widget) neither of the OnNotify or OnChange actions linked to this input are not triggered. It happens though only when users selects all the text and clears it using backspace/delete, but if it deletes it character by character the OnNotify is called.


Please let me know if there is a fix for this. Also, keep in mind that we are using SilkUI for the moment and using a component from OutSystems UI is not possible for the moment.


Thanks,

Bogdan

Hi Bogdan,

Can you share oml or screen shot with action? it will help us to more clearification.

Hi Rahul,


I've attached a sample .oml that describes this behavior. The trigger button is enabled whenever a valid user is selected (UserId variable is not null). If you try to select a user you can see that the button becomes enabled and if you delete character by character the text from the input it gets disabled.


However, if you select all the text from the input and delete it there is no action triggered and the buton remains enabled.


Hope this helps.

Hi both,

I have a similar problem with the Input_AutoComplete. In my logic, i clear the variable in the input widget. When the user types a new value in the input the action AutoCompleteTags is not fired. 

Hope somebody can help.

Bogdan Boglea wrote:

Hi Rahul,


I've attached a sample .oml that describes this behavior. The trigger button is enabled whenever a valid user is selected (UserId variable is not null). If you try to select a user you can see that the button becomes enabled and if you delete character by character the text from the input it gets disabled.


However, if you select all the text from the input and delete it there is no action triggered and the buton remains enabled.


Hope this helps.

Hi Bogdan,

I have found a workaround .

 1.you can use one button for this provide a name for button and apply style "display:none".

2.create on action for ajax submit and set userid=nullidentifire() and refresh trigger button.

3.use onkeydown action  of input AutoComplete like 


Hope this will help.

Kind Regard

Rahul Sahu

Hi Rahul,

I tried, but for my problem this is not a solution.

Best regards,

Leen Rietveld.

Hi Bogdan,

You will have to ajax refresh both the input text box and RichWidgets\Input_AutoComplete on your OnChange screen action. Hope this helps.


Regards,

Diyab

Bogdan Boglea wrote:

Hello,


I've found an issue for the Input_AutoComplete widget from SilkUI and I'm wondering if anyone can help me overcome this. We have a screen that uses the AutoComplete widget and based on the selection made some forms are filled in with specific data.


The problem is that whenever the user clears the text from the input (linked to the autocomplete widget) neither of the OnNotify or OnChange actions linked to this input are not triggered. It happens though only when users selects all the text and clears it using backspace/delete, but if it deletes it character by character the OnNotify is called.


Please let me know if there is a fix for this. Also, keep in mind that we are using SilkUI for the moment and using a component from OutSystems UI is not possible for the moment.


Thanks,

Bogdan

Hi,

I also faced this issue. I solved it like in the ONChange action I ajax refreshed the auto complete webblock as well so the behavior remains the same if you select all text and clear it and clear the text one by one.  


Regards,

Manthan Shah


Hello,

To solve that issue i've created a webblock, that receives an InputId, with the following jQuery code:

"$(""#" + EncodeJavaScript(InputId) + """).change(function(){
    if($(this).val() == ''){
        $(""#" + EncodeJavaScript(CleanTrigger.Id) + """).click()
    }
});"

Then you need also a hidden link in the webblock.

Clean action with the following logic/code:

In the end you just need to apply the webblock to the inputbox where the autocomplete is.


Hope it helps,

Luis