Select Bootstrap Display Issue with Apple Safari

Very simply Select clear and additem and a blank select box popup appears while running on Apple device.

Add a select Bootstrap 4 and a Button to app and then code

Function Button1_onclick()
  
  Select1.clear()
  Select1.addItem("1",1)
  Select1.addItem("2",2)
  Select1.addItem("3",3)
  Select1.addItem("4",4)

End Function

Does anyone have a correction for this weird display issue? It does not seem to happen with Google Chrome.

Thanks in advance.

Can you include a screen shot of the problem?

Does this happen when running as a web app, home page or native app?

web app/home

Select is the example

Run from PC with Chrome gives different results then Safari on Iphone.
See pix attached.

Could it be that your button1 is located too close to select1 so when you tap the button, select1 is calling its select1_onlclick function at the same time. Try moving the button further away from select1.

No. This is just he example. It app not even close. But just in case, I moved the button and same result. Thanks for effort.

Looking at the select in the screenshot it has a blue highlight, this happens when you tab / click it, or select1.focus() has been called.

Agreed but its programmatically. Its not being clicked. I just did the same example with java to see but same results.

I’ve just checked my new iOS native app and that has the same issue when I clear the items from the select.

I don’t recall having that issue previously with other apps in the past.

I’m working on reproducing the problem here.

Here my attempt - give it a try.

Can you give me the link to your so I can compare?

You missed it above - but here again. Select

I ran yours from my phone and you have the same problem - pulls up a blank select after you clear it.

Thanks for the help.

Found a solution. The problem is a subtle one: It’s trying to update Select1 before the code for Button1 finishes. Safari must have introduced some sort of timing problem.

Here’s what works for me: Clicking the button calls the function to refresh Select1 a tenth of a second later. That gives the Button1_onclick() function time to complete.

Function Button1_onclick()
  SetTimeout("refresh()",100);
End Function

Function refresh()
    Select1.clear()
    Select1.addItem("1", 1)
    Select1.addItem("2", 2)
    Select1.addItem("3", 3)
    Select1.addItem("4", 4)
End Function

Awesome. I even put in a Waitcursor before the SetTimeout. Works great.
Thanks for the help.