JQuery Mobile追加新按钮的行为未达到预期

JQuery Mobile Append new Buttons not behaving as expected

本文关键字:未达到 按钮 追加 Mobile 新按钮 JQuery      更新时间:2023-09-26

可能重复:
jQuery Mobile在动态添加内容后不应用样式

我想知道我是不是错过了什么。。。

如果我写

<a onclick="deleteThis()" data-role="button" data-theme="a">Button text</a>

在HTML页面的正文中,它运行良好。但当我用程序尝试添加新按钮时,使用以下内容:

$('.block').append('<a onclick="deleteThis()" data-role="button" data-theme="a">' + results[i].Title + '</a>');

该链接附加得很好,只是没有JQuery移动样式,数据主题="a"应该将特定的色样css应用于有问题的元素。

我哪里错了?

 $('.block').append(' <a onclick="deleteThis()" data-role="button" data-theme="a"> Text</a>').trigger( "create" );

您可以使用jQuery Mobile提供的.buttonMarkup()方法。此方法还允许您传递一些可选参数。

以下是.buttonMarkup()方法的文档:http://jquerymobile.com/demos/1.1.0/docs/buttons/buttons-options.html

以下是使用此方法创建按钮的示例:

$('<a href="#" />').text('New Button').buttonMarkup({
    theme  : 'a',
    icon   : 'star',
    mini   : false,
    inline : false
});
//these are just a few of the options

下面是一个演示:http://jsfiddle.net/jasper/6BF6M/

此外,我是否可以建议使用jQuery来进行事件绑定,比如:

$('.block').append(
    $('<a href="#" />').text('New Button').buttonMarkup().bind('click', deleteThis)
);

尝试触发刷新事件,对于页面:

$('#pageId').trigger('pagecreate');

如果是列表视图:

$('#listId').listview('refresh');