2012-08-03 65 views
0

我已經閱讀了很多文章和「修復」這個問題,但還沒有找到解決方案。我們正在使用PhoneGap創建一個多平臺應用程序,但我們遇到了Android設備上的問題(在iPhone/iPad上正常工作)。我們的下拉菜單不起作用,點擊它們什麼也不做。<select>下拉菜單不能在Android上點擊

當用戶「進入新頁面」時,我們通過設置內容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> 

任何頁面中的一個有什麼想法?

+0

你用什麼來觸發頁面更改? – Paul 2012-08-04 22:40:20

回答

0

我從誰說過你動態設置HTML後會解決此問題設置

style.display=block 

屬性此下拉我的一個朋友聽說過這個修復。

如果你有多個下拉菜單,然後使用

document.getElementsByTagName('select') 
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問題,在這個例子中它會是「.multiselect」。什麼是可能缺少的是「指針事件」看到這樣的文件: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。