2012-10-20 68 views
1

沒有太多的運氣研究這個atm。很多關於手機jquery但不標準。刷新後選擇Ajax加載選項後調用點擊選擇

基本上我有一個標準的選擇列表與幾個php加載選項。當用戶點擊選擇時,即時消息的作用是調用一個ajax請求,該請求會根據其他變量將額外選項加載到選擇菜單中。但足夠簡單,但選擇菜單不會重新加載列表,直到菜單重新調焦爲止(單擊關閉並再次打開)。

我已經嘗試過.selectmenu('refresh', true);.trigger('refresh');但我不認爲這是這些功能的意義,因爲你可以猜測不起作用。

任何想法或任何人解決了這個問題?即時通訊我已經看到這在其他網站上使用加載符號完成,但atm即時猜測這可能不是一個選擇,但某種定製的UL。

我不能讓我的用戶點擊一個菜單只是點擊它,然後再次點擊,並且不想在點擊單獨按鈕時必須加載ajax,因爲這應該是一個快速功能。

另外我不能讓它在變量設置時加載。

+0

菜單刷新工作,也許你的AJAX的問題。發佈所有代碼。 請參閱:[http://jsfiddle.net/HVahC/](http://jsfiddle.net/HVahC/) –

+0

nope不能是ajax,因爲我只測試了使用虛擬數據和jquery追加'$ ( '#selectbox')點擊(函數(){ \t $此= $(本); \t \t \t \t \t的setTimeout(函數(){$ this.append( '').trigger( 'refresh');},4000); }); '如果我點擊選擇,並等待下拉菜單沒有得到填充測試數據,直到我點擊,然後再點擊它,按照我的問題所述。請正確閱讀,我不是一個小白菜。 –

+0

編輯 - 雖然我忘了檢查Xbrowser,但這在FF中工作,但我使用基於webkit的瀏覽器。 –

回答

1

我發現這種方式,在#id_select-button的點擊事件返回false,jquery mobile添加'-button'並手動打開選項。

$('#select-choice-1-button').click(function(){ 

    setTimeout(function(){ 
     $('#select-choice-1').append('<option value="gg">TEST SUCCESS</option>'); 
     $('#select-choice-1').selectmenu('refresh'); 
     $('#select-choice-1').selectmenu('open'); 
    }, 2000); 

    return false; 
}); 

http://jsfiddle.net/HVahC/1/

+1

啊哈,是的,反過來說,這聽起來像是我最接近我的目標。希望能夠在列表中顯示一個加載符號,但是在開啓之前,我可以在選擇之上加載絕對的代碼。非常感謝兄弟。 –