Making a Search Bar

Isn’t the idea that the system keeps proposing more refined selections as you type?

in my case it does not work as I wish. example: if I’m writing jose and I’ve only written jos, start the filtering function and only filter by jos and not by jose. I have then to erase the e and put it back on, so I can filter by the word jose

1 Like

Not sure I understand your dilemma.
Surely, when you have written ‘jos’, the algorithm would suggest all the ‘jos’ and all the ‘jose’ (along with the ‘joseph’, the ‘josh’, and the ‘aljos’, since they all have ‘jos’ in them).
But the moment you enter the ‘e’, then it would suggest only those that have ‘jose’ in them, wouldn’t it?

1 Like

Hi there,

If you don’t want the results to update automatically, you can use the With a Search Button method so that you only see your results when you have finished typing and clicked ‘search’.

2 Likes

How do you set this so it doesnt keep resetting the new list view?

There are several approaches to incremental search (which you want to implement)

  1. The list of results is updated every time the search string is changed, if there are more characters in the string, for example, more than 3 (this condition is necessary to optimize the filter). If the line is empty, then all positions are displayed.

One timer is needed to implement this algorithm.

  1. The list of results is updated if the user has stopped entering. To do this, you need two timers, the first to track changes in the search string, the second to fire after a specified time interval. In this case, the value of the second timer is reset if the user continues to change the line. For example, the second timer is set to fire 1 second after the search string stops changing.

This option allows you to reduce the load on the search engine, since the list does not change every time the line is changed, but it worsens the responsiveness. If the user changes the line slowly, then the search engine will constantly update the list of results. If you increase the timer by 2 seconds, then for a user with fast character entry, such a delay will cause irritation.

Record selection criteria?

  1. At the beginning of the line of records
  2. By the entry of the desired line in the record
  3. By the entry of each fragment of the desired line in the record

How to display filtered records?

  1. Show all found records
  2. Only output the first n-records (as when searching on Google)
  3. Pagination (portioned) output (displayed by n-entries in the list and the buttons “next” and “previous” - as when searching in online stores)

Which version of the search algorithm do you need?

Hello!
Did you fixed it? I’m trying but I can’t.

Thanks!

if you do on airtable would be great and please share links if still available.

Thank you for share information.

Hi,

I like automatic update, but I find a little problem. When you type a letter it updates to the last letter you wrote and I don’t know how to fix it.

Thanks.

1 Like

Hi,

See scrFinder in https://x.thunkable.com/projects/5d70f93f8a62b4079eedaff2/project/properties/designer/

2 Likes

Hey @smart.laziness, welcome to our community :wave:

Can you tell us the steps you took to produce this behaviour?

If we know how to reproduce this error then we should be able to fix it.

Thanks!

1 Like

Hi,

Very professional but it´s not easy to understand because of the complex of code.

Thanks.

1 Like

Hi @domhnallohanlon,

Imagine a new list:

abc11, abc12, abc21, abc22…

If you type “abc1” and wait, it shows “abc11, abc12, abc21, abc22”, because it detects “abc”
If you continue and type “abc12” and wait, it shows “abc11, abc12”, because it detects “abc1”

Any idea to fix de automatic update code of @jane? Or tell me why in my case it doesn´t works?

1 Like

Hi,

I found why, and the reason is because you need to actualise the variable searchString with the text input before doing the search and not after. I’ll show you with a capture.

Thanks.

2 Likes

@smart.laziness thanks for updating us!

I’ll try to update the sample app too!

1 Like

Hello,

My app project has an automatic search engine and it works on the live test, but the screen freezes when I test it on my downloaded app (or live test app). I think a timer is causing this issue because every single page that has a timer freezes in the similar way. Do you know how to fix this issue?
I always stop the timer when I exit each page, but that doesn’t seem to be a solution.

1 Like

@technovationhc4 are you following this tutorial or did you make your own search function?

2 Likes

I did in the exact same way as Jane instructed.
It’s strange because it is working in the live test within the website, but not on the live test app on my phone.

1 Like

Can you tell how to do so using a data viewers grid which is taking data from airtable

1 Like

This was very helpful everyone! my search bar works great, wouldn’t be able to do it with out the community. :fist_right::fist_left: :+1:

2 Likes