Edited at

jQuery Mobileでボタンやリストビューを動的に追加する

More than 5 years have passed since last update.

jQuery Mobileが初期化処理を完了し、ページが表示されたあとに

<a data-role="button"/>

を追加してもただのanchor要素が追加されるだけだった。以下のようにbutton関数を呼べばボタンになった。

参考: http://forum.jquery.com/topic/how-to-dynamically-add-data-role-button

<script>

(function($){
$(window).load(function(){
var $content = $('#content');
$('<a/>').text('Label')
.data('icon','home')
.appendTo($content)
.button()
;
});
})(jQuery);
</script>

同じようにリストビューも追加できた。ただし、こちらはappendしたあとに呼び出さないとうまく表示されなかった。

$('<ul/>').append('<li>aaa</li><li>bbb</li>')

.appendTo($content)
.listview()
;