You need to enhance elements that are dynamically injected. To enhance/initialize all items in spite of their type, you need to call .enhanceWithin()
on parent div.
Although .enhanceWithin()
should do the job, however, it looks like it failed here. Anyway, all you need to re-enhance listview widget by calling .listview("refresh");
after successfully loading external elements.
$( "#nav-panelz" ).on( "panelbeforeopen", function( event, ui ) {
$("#loadexternal").load("external.php", function () {
$("#loadexternal").listview("refresh");
});
});