Jquery mobile向页面添加按钮不起作用

时间:2014-01-25 10:44:39

标签: javascript jquery html jquery-mobile

我正在开发一个jquery移动应用程序。我遇到了一个问题,即动态添加的按钮不起作用,除非我使用.trigger('create');,但即使添加了触发器,我仍然遇到同样的问题。这个问题在很多时候都会在这个网站上被问到,但所有的答案都建议在代码中添加.trigger('create');。我该如何解决这个问题? 这是我的代码:

var button = $("<a data-role="button" id="my_button">My Button</a>");
$("#my_div").append(button).trigger('create');

$("#my_button").on("click", function(){
    alert("clicked");
});

当我点击按钮时没有任何事情发生。

2 个答案:

答案 0 :(得分:1)

动态添加 anchors 时,请使用.buttonMarkup()创建它。使用上述增强方法创建时,可能会添加data-role="button"

$("#my_div").append($("<a/>", {
    id: "my_button",
        "data-role": "button"
}).text("Button").buttonMarkup({
    icon: "delete",
    iconpos: "notext"
}));

将动态绑定事件绑定到文档

$(document).on("click", ".selector", function () {
  alert("clicked");
});
  

<强> Demo

答案 1 :(得分:0)

变化:

var button = $("<button data-role="button" id="my_button">My Button</button>");

为:

var button = $("<button data-role='button' id='my_button'>My Button</button>");

您没有正确创建按钮。正确连接HTML并且代码应该可以正常工作