この質問は、スタック オーバーフローで何度も尋ねられており、すべての質問からすべての解決策を試しました。それらのリストは次のとおりです。
1:
var list = '';
for....
list += 'html...';
$('#mylist').append(list);
$('#mylist').listview('refresh'); // appending all at once with var
二:
for....
$('#mylist').append('html...');
$('#mylist').listview('refresh'); // refresh once after appends
三:
for....
$('#mylist').append('html...');
$('#mylist').listview().listview('refresh'); // to init listview
四:
for....
$('#mylist').append('html...').listview('refresh'); // refresh after each append - BAD
私が試したバリエーションは他にもあります。.listview('refresh') なし - スタイルは追加時に削除されます。更新呼び出しを使用すると機能しますが、次のような javascript エラーが発生します。
`キャッチされていないエラー: 初期化の前にリストビューでメソッドを呼び出すことはできません。メソッド 'refresh' を呼び出そうとしました
使え.listview().listview('refresh')
ません。
参照: https://stackoverflow.com/a/11943886/488407
PS: 最新バージョンの jQuery モバイル (v1.3.1) を使用しているため、このソリューションは以前のバージョンでも機能した可能性があります。パネルを使用しているため、最新バージョンを使用する必要があります。