首页 > 解决方案 > Jquery .Replacewith 返回字符串

问题描述

我想检查我的复选框是否被选中,如果它被选中,我想用标签替换它

for (var N = 0; N < Checkboxes; N++) {
    var thischeckbox = Checkboxes[N];
    if ($(thischeckbox).prop("checked") == true) {
        thischeckbox.replaceWith(function () {
            return $("<label> ticked <label/>")
        });
        // thischeckbox.removeAttribute("style");
    }
}

但这为我返回 function () {return $( ticked ) 作为字符串是因为它在 for 中并且不能安静地加载吗?

标签: javascriptjquery

解决方案


似乎你忘了用美元符号换行,thischeckbox因为replaceWith它也是一个 jQuery 方法,你在回调中返回一个 jQuery 对象

试试下面:

$(thischeckbox).replaceWith(function () {
    return $("<label> ticked <label/>");
});

推荐阅读