jQueryMobileを使用して、選択ウィジェットの内容を変更してから、その上で 'refresh'を呼び出すと、選択したオプションのテキストは変更されません。ここにシナリオがあります...jquery mobile selectedオプションが 'refresh'で更新されない
「選択」ウィジェットは既にページdivにあります。ユーザーがその画面に移動すると、そのページに移動するために選択したボタンに基づいてオプションが動的に作成されます。このオプションリストは、
$('#searchReasonList').append(optionList)
のように作成され追加されています。新しいページにはじめて動作します。彼らが離れて戻って来るとき、私は
$('#searchReasonList').empty()正しいオプションリストを構築し、同じ追加を行い、電話:
$('#searchReasonList').selectmenu('refresh',true)
ネイティブの選択は本当にリフレッシュされ、オプションから選択することができます。ただし、選択したオプションは表示されません。プレースホルダだけが表示されます。これは、選択されたオプションのラベルで更新されていないclass='ui-btn-text'
でそのスパンタグの
<div class="ui-select">
<div class="ui-btn ui-btn-icon-right ui-btn-corner-all ui-shadow ui-btn-up-c" data-theme="c">
<span class="ui-btn-inner ui-btn-corner-all">
<span class="ui-btn-text">Select Reason</span>
<span class="ui-icon ui-icon-arrow-d ui-icon-shadow"></span>
</span>
<select id="searchReasonList" name="searchReasonList" data-placeholder="true">
<option value="">Select Reason</option>
<option value="1">Option 1</option>
<option value="2">Option 2</option>
</select>
</div>
</div>
:拡張マークアップを表示するには
。私のプレースホルダーのラベルである "Search Reason"のままです。
何か別のことが必要ですか?
jQuery Mobileのどのバージョンを使用していますか? – Jasper
1.0.1、この時点では最新の安定版です。 – dlgrasse