jQuery Mobile动态删除数据主题,然后刷新<ul> </ul>

时间:2012-12-13 01:01:35

标签: jquery-mobile

我正在实现一个“尚未查看”列表,其中用户看到ul中的项目列表,而用户未查看的项目列表中应用了数据主题以突出显示它们。当用户点击它显示的项目时,我需要删除数据主题,以便不再突出显示该项目。

我有正确删除属性的逻辑,正如我在Chrome开发者工具的“元素”部分中看到的那样,该属性不再属于li。但突出显示在渲染页面中仍然可见。

我已经搜索并看到了一些涉及刷新页面,列表等的建议,但都无济于事。你可以看到如下的一些尝试(在函数“this”中是li):

    $(this).removeAttr("data-theme");
    //$(this).closest("ul").listview("refresh");
    //$(this).closest("ul").listview();
    //$('#mylist').listview();
    //$("#content-notifications").page();
    //$("#content-notifications").page("destroy").page();
    //if ( $("#content-notifications").data("page") ) {
    //      $(this).closest("ul").listview("refresh");
        //};

任何人都有正确的解决方案,因为我找不到它!

谢谢 -

马特

1 个答案:

答案 0 :(得分:1)

您必须手动删除li中旧主题的类,并添加新主题的类。

$(document).on("click","li",function(){
  $(this).attr("data-theme","b").removeClass("ui-btn-up-a").addClass("ui-btn-up-b")
});

在这里演示 - http://jsfiddle.net/ENYxw/