<select>下拉菜单无法在Android上单击</select>

时间:2012-08-03 16:16:30

标签: android select drop-down-menu webview clickable

我已阅读了很多帖子和“修复”这个问题,但仍未找到解决方案。我们正在使用PhoneGap创建一个多平台的应用程序,但我们在Android设备上遇到了问题(在iPhone / iPad上运行正常)。我们的下拉菜单不起作用,点击它们什么都不做。

当用户“转到新页面”时,我们通过设置内容div的HTML来动态创建所有页面。例如,我们将以下内容附加到我们的一个页面的内容div中

<div class="dropdown-padding">
    <select class="trials-dropdown" id="diseaseSite">
        <option value="Any">Any</option>
        <option value="All Cancers">All Cancers</option>
        ...
        <option value="Prostate Cancer">Prostate Cancer</option>
        <option value="Sarcoma">Sarcoma</option>
    </select>
</div>

有人有什么想法吗?

2 个答案:

答案 0 :(得分:1)

如果您有这样的事情:

  <div class='multiselect-wrapper'>
    <div class='multiselect'>Age Range</div>
        <select type='hidden' class='age' id='age' name='age' multiple="">
           <option value='-1'>Age Range</option>
           <option value='6' title='Preyears'>Pre</option>
           <option value='7' title='Kids'>Kids</option>
           <option value='8' title='Tween'</option>
           <option value='9' title='Adult'>Adult</option>
        </select>
   </div>

并且它不适用于您的android(显示您想要选择的选项的原生抽屉)然后它可能是关于您的标签DIV的CSS问题,在此示例中它将是&#34; .multiselect&# 34 ;.缺少的可能是&#34;指针事件&#34;请参阅此文档:https://developer.mozilla.org/en/docs/Web/CSS/pointer-events

如果您将CSS更新为:

.multiselect{
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        left: 0;
        pointer-events: none;
        cursor: pointer;
        line-height: 40px;
    }

然后它应该工作,允许您单击选择并显示带有多选选项的抽屉(基本上是原生多重复选框)。

希望这适合你。

我和我的同事Basem一起工作,这对我们有用。

干杯,

CG。

答案 1 :(得分:0)

我从一位说过设置

的朋友那里听说过这个问题
style.display=block 
动态设置HTML后,此下拉列表的

属性将解决此问题。

如果您有多个下拉菜单,请使用

进行迭代
document.getElementsByTagName('select')