使用jquery mobile向面板listview动态添加内容

使用jquery mobile向面板listview动态添加内容,jquery,ajax,django,jquery-mobile,Jquery,Ajax,Django,Jquery Mobile,我正在开发一个django支持的SPA应用程序,它的主界面由jquery mobile支持 我只有一个面板。我的最终目标是让这个面板根据用户点击打开它的链接进行动态更新 面板开始为空白: <div data-role="panel" id="properties_panel" data-display="overlay" data-position="right" data-position-fixed=true> </div> 现在,ajax文件已成功获取和加载,但是

我正在开发一个django支持的SPA应用程序,它的主界面由jquery mobile支持

我只有一个面板。我的最终目标是让这个面板根据用户点击打开它的链接进行动态更新

面板开始为空白:

<div data-role="panel" id="properties_panel" data-display="overlay" data-position="right" data-position-fixed=true>
</div>
现在,ajax文件已成功获取和加载,但是,我的目标是将内容显示为jquery移动元素(在本例中为列表视图)。但是,内容显示为普通列表,而不是listview

菜单_preferences_elements.html的内容:

<div class="editing_tools_section shadow">
    <div class="editing_tools_heading ui-btn ui-icon-minus ui-btn-icon-right ui-nodisc-icon">Search for menu item</div>
    <div class="editing_tools_item">Use the search box below to search for a menu item.</div>
    <div class="editing_tools_item grey_bg">
        <ul id="menu_item_list" data-role="listview" data-filter="true" data-icon="false" data-filter-reveal="true" data-filter-placeholder="Search for menu item..." data-inset="true">

             <script>
                menu_database().each(function(record){
                    document.write("<li><a href='#'  data-elementid='"+record.Item_Id+"'>"+record.Name+"</a></li>");
                });
            </script>
        </ul>
    </div>
</div>
有没有办法使内容正确显示为可过滤的jquery mobile listview

编辑:

使用创建方法修复了以下问题:

 $("#properties_panel").trigger('create');

能否尝试触发div上的
create
方法

$(".editing_tools_section").on('click','.editing_tools_item', function(){

    $("#properties_panel").html(panel_text);

    $("#properties_panel").trigger('updatelayout');
    $("#properties_panel").trigger('create');
    $("#properties_panel").panel("open");

 });
从这里开始,大家接受的答案,更详细地讨论了这一点

 $("#properties_panel").trigger('create');
$(".editing_tools_section").on('click','.editing_tools_item', function(){

    $("#properties_panel").html(panel_text);

    $("#properties_panel").trigger('updatelayout');
    $("#properties_panel").trigger('create');
    $("#properties_panel").panel("open");

 });