2014-11-04 71 views
3

我在我的網頁中使用了jquery selectmenu功能,它似乎在ios瀏覽器上不能正常工作。jQuery selectmenu更改功能不能在iPhone上工作

當我選擇我的菜單項後,菜單消失了,但我的更改:函數根本不會啓動。它只是再次隱藏菜單。

我的代碼如下:

$('#adultMenu').selectmenu({ 
    change: function() { 
     adultval = $(this).val() + ' Adults. '; 
     var inputvalue = adultval + childval + youthval + infantval; 
     $('#personInput').val(inputvalue); 
    } 
}); 

我覺得這是iOS上的一個相當普遍的問題,但我還沒有找到一個很長的時間閱讀論壇後回答。

任何幫助將是偉大的!

+1

「它似乎不能正常工作」 - 這是什麼意思?您需要準確無誤,否則我們可以如何幫助您? – Andy 2014-11-04 13:29:50

+0

嗨安迪,我已經更新了我的文章,以便更詳細一點。基本上,當我點擊我的選項時,它只是再次隱藏菜單,而不是在更改函數中運行代碼。我希望這是有道理的。它也值得注意,我只在IOS上遇到這個問題,而不是android。 – djnetherton 2014-11-04 13:37:18

+0

您是否曾嘗試在更改函數中放置警報,以便知道它是否被調用?裏面的代碼看起來很好,但最好排除它。另外,你是否嘗試過不同的瀏覽器並通過USB進行遠程調試? – Archer 2014-11-04 13:37:25

回答

1

親愛的人的未來:這是我到目前爲止已經想通了:
編輯與新的結論

後更實驗,我找到了原因。當你在菜單中設置某個選擇菜單的值時,會發生這種情況。下面演示了這個問題:

var $fubar = $('.fubar'); 
 

 
$fubar.selectmenu({ 
 
    'change': function() { 
 
     $fubar.val('Pancakes'); 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> 
 
<link href="https://code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css" rel="stylesheet"/> 
 
<script src="https://code.jquery.com/ui/1.11.4/jquery-ui.min.js"></script> 
 
<select class="fubar"> 
 
    <option>Cake</option> 
 
    <option>Ice Cream</option> 
 
</select>