2016-02-19 97 views
0

我有一個jQuery的移動選擇菜單,以前在Safari和Chrome工作正常,但最近selectmenu不會選擇選項的選擇。它仍然在Safari中正常工作。在我的桌面上使用仿真器或chrome開發工具時,我不會遇到任何錯誤。我確實遇到了glyphicons-halflings-regular.woff2無法加載的問題,並且我已經嘗試了在此處找到的所有建議,但這些似乎都不起作用,並且大部分我所做的所有研究都提供了> 4歲。jquery mobile selectmenu不工作在鉻

我使用的是jquery mobile 1.4.5和bootstrap 3.3.6,應用程序駐留在Azure上。

這裏就是我有現在...

<div class="ui-field-contain" id="regionDiv"> 
    <label for="region">Region:</label> 
    <select class="text-left" name="select-region" id="region" data-native-menu="false" data-mini="true" onchange="changeRegion();"></select> 
</div> 

<div class="ui-field-contain"> 
    <label for="projectmob">Project:</label> 
    <select class="text-left" name="select-proj" id="projectmob" data-native-menu="false" data-mini="true" onchange="dwmChange();"></select> 
</div> 

無論是區域和項目selectmenus不要選擇該項目,他們只留下一個空白框或不會讓你選擇項目。

選定時運行的.js文件(我認爲這是好的)...

function changeRegion() 
{ 
    var regid = Number($("#region").val()); 
    var projsel = $("#projectmob"); 
    projsel.empty(); 
    projsel.append("<option id='selproj' value='placeholder' data-placeholder='true'>Select Project...</option>"); 
    var projNumber = 0; 
    var projValue = -1; 

    for (var i = 0; i < proj.length; i++) { 
     if (proj[i].region == regid) { 
      projNumber++; 
      projsel.append("<option id='oc1-" + proj[i].id + "' value='" + proj[i].id + "'>" + proj[i].wono + ': ' + proj[i].name + "</option>"); 
      projValue = proj[i].id; 
     }; 
    }; 

    $("#projectmob").selectmenu('refresh', true); 
    if (projNumber == 1) { 
     $("#projectmob").val(projValue).selectmenu('refresh'); 
    }; 

    getFilteredEvents(); 
} 

function dwmChange() 
{ 
    var projid = Number($("#projectmob").val()); 
    if (projid > 0) { 
     getFilteredEvents(); 
     var regValue = findRegion(projid); 
     $("#region").val(regValue).selectmenu('refresh'); 
    }; 
} 

getFilteredEvents();命中azure sql數據庫並設置獲取數據的屏幕。

據我所知,這一切都運行良好,直到大約一週前。我已經做出了更改和更新,但是我認爲不會影響selectmenus的工作。

任何想法或想法,將不勝感激。

謝謝

+0

更新:雖然我掙扎這幾天,我只是想設法強制selectmenu在做出選擇之後關閉,現在似乎工作。不知道與Chrome有什麼不同,但有必要強制關閉它。也許這會幫助別人。 – smitty425

+0

再次更新:仍然沒有解決。它似乎是有氣質的。當我在我的筆記本電腦上使用模擬器或鍍鉻物時,一切正常。當我在iPhone上使用Safari時,它工作正常。它似乎與IOS上的Chrome隔離。如果有人有任何想法,仍然會對幫助感興趣?奇怪的是,我有時可以足夠地點擊我的屏幕或其他東西,以使其識別我選擇的選擇菜單。 – smitty425

回答

-1

這似乎是一個問題,與鉻50.0.2661.89。

進一步看這個......

我不得不懷疑背後jQuery Mobile的默認隱藏在select>元素焦點工具欄的邏輯。本地瀏覽器選擇元素以各種特殊方式覆蓋頁面,甚至是非本地選擇彈出窗口(在html或nativeMenu中指定數據屬性data-native-menu =「false」時獲得>> false selectmenu選項)絕對定位爲對話框。這意味着工具欄真的不會侵入給予selectmenu選項的房地產,因爲它們將始終覆蓋包括工具欄在內的所有內容。 >對我來說,這使得12664 - 12692行的代碼被註釋爲:這隱藏了>鍵盤彈出窗口上的>工具欄,以提供更多的屏幕空間而不必使用>選擇元素。

解決方法/解決方案:幸運的是jQuery的移動也很好地讓您覆蓋>此設置與數據屬性數據隱藏,在─>聚焦,頁眉/頁腳 - 簡單地將其設置爲:

數據-hide-期間對焦=「輸入文本區域」

,它不會嘗試了隱藏工具欄時,選擇元素獲得焦點「 從https://github.com/jquery/jquery-mobile/issues/8429