Jquery mobile 1.4.5 动态改变按钮主题

Jquery mobile 1.4.5 dynamically change theme of button

我想用 jquery 更改按钮的主题,但由于某些原因它不适用于 $("#btn").button("option", "theme", "a");

我尝试了不同版本的按钮,例如 <button><input> 以及 <a> 由于设计原因我无法使用的版本。当我使用 <button> 时脚本崩溃(不知何故我无法调用按钮上的功能按钮...)并且使用 <input> 它只能单向工作。我可以通过某种方式将主题从 "a" 更改为 "b",但不能从 "b" 更改为 "a"。我还尝试了一个自定义主题,我注意到它只能以某种方式按增加的字典顺序更改主题。

我也用 $("#radio").checkboxradio("option", "theme", 'a'); 在单选按钮上尝试过它,它可以双向工作。

这是显示问题的 jsfiddle:http://jsfiddle.net/cfqgn8gw/

提前致谢!

jQM 按钮小部件仅适用于 <input> dom 元素按钮和锚点已设置样式但未初始化为 jQM 小部件。

您可以通过删除和添加单个 CSS class:

轻松切换主题
function change_a() {
    $("#radio").checkboxradio("option", "theme", 'a').checkboxradio("refresh");

    $("#input, #btn").closest(".ui-btn").removeClass("ui-btn-b").addClass("ui-btn-a");
}

function change_b() {
    $("#radio").checkboxradio("option", "theme", 'b').checkboxradio("refresh");

    $("#input, #btn").closest(".ui-btn").removeClass("ui-btn-a").addClass("ui-btn-b");
}

Updated FIDDLE