收到此消息:
Error: cannot call methods on checkboxradio prior to initialization;
attempted to call method 'refresh'
我按照这里找到的演示:Ugly Mongrel
这是我的JS的一个片段:
function(){
var $pbNum = $('<input checked="checked" id="component-pbnum-'+ _val+
'" name="component-pbnum[]'+
'" type="checkbox" value="'+ _val+ '" data-mini="true">'+
'<label for="component-pbnum-'+ _val+ '">'+ _val+ '</label>'),
$pbNumChk = $($pbNum[0]).on("change", function(ev){
$pbNum.remove();
// UNCAUGHT EXCEPTION: "cannot call methods on checkboxradio prior
// to initialization; attempted to call method 'refresh'"
});
$pbnumList.controlgroup("container").append($pbNum);
$pbNumChk.checkboxradio();
// Have also tried $pbNumChk.checkboxradio().checkboxradio("refresh")
// as hinted by other answers. No difference.
}
我需要动态添加 checkboxradio (在这种情况下为复选框),但提供在单击/点击它们时将其删除的能力。
与 jQUI 相比,jQM 的局限性实际上有点令人沮丧。没有(记录)这些小部件的“销毁”方法?反正...
复选框添加到我的控制组就好了。当我在完整的浏览器中单击以删除它们时,它们会被删除,但会引发异常。到目前为止,我发现的所有内容都类似于以下内容: https ://stackoverflow.com/a/15180600/258598
这就是我要找的东西:http: //goo.gl/mVOdo
我不明白。为什么当我删除它时 JS 会抛出一个关于小部件的错误 - 特别是当它在插入时被初始化时?
[编辑]
修复了 $pbNum HTML 字符串中的一个小错字