我<select>
在应用程序中显示的网页中有许多 html 元素(在UIWebView
控制中)。其中一些允许多项选择。当用户更改列表中的某些内容时,我需要执行操作。对于多项选择,我需要在用户完成重新排列复选框并单击“完成”后执行操作。
它是如何在 iOS 6 中实现的(并且在那里完美运行):
<select onblur="alert('do something...');">...</select>
<select multiple='multiple' onblur="alert('do something...');">...</select>
iOS 7 问题:
<select onblur="alert('NOT ALWAYS WORK...');">...</select>
<select multiple='multiple' onblur="alert('NOT ALWAYS WORK...');">...</select>
<select onchange="alert('THIS WORKS');">...</select>
<select multiple='multiple' onchange="alert('WORKS BUT NOT AS EXPECTED');">...</select>
onblur
不再可靠。它仅在下面有其他文本框或下拉列表时才有效。如果它是页面上唯一的下拉菜单/文本框,则不会触发。
我尝试替换onblur
为onchange
,它有效,但仅适用于单一选择。当用户更改他的选择时触发多项选择onchange
,而不是在他完成时(通过单击“完成”)。
任何想法如何解决 iOS 7 中的单个和多个下拉列表?
也许我错过了一些明显的东西?