无法取消选中wp admin中的jQuery复选框

时间:2019-06-21 作者:MulOnPomm

我的js代码:

$(\'div[aria-label="Asukohad"] input[type="checkbox"]\').on("change", function() {
    var element = $(this);

    if(element.is(":checked")) {
        //todo
    } else {
        uncheckAll();
    }
});

function uncheckAll() {
    $(\'div[aria-label="Asukohad"] input[type="checkbox"]\').attr(\'checked\', false);
}
当我选中一些复选框,然后取消选中其中一个复选框时,所有复选框都被取消选中,这很好。但现在,当我选择另一个checbox时,所有其他复选框也会被选中,而jQuery不会选中这些复选框。我有一种感觉,当我用jQuery取消选中复选框时,我必须以某种方式同步复选框。

复选框位于“帖子/页面属性”面板中。

视频演示:https://vimeo.com/343601969

1 个回复
SO网友:Rudy Lister

你能澄清一下你的问题吗?您是否试图创建一个复选框,该复选框可以清除所有复选框,并通过选中该复选框来重新检查所有复选框?

此外,检查后的输入也会这样写:

<input id="editor-post-taxonomies-hierarchical-term-48" class="editor-post-taxonomies__hierarchical-terms-input" type="checkbox" checked value="48" />
您可以执行以下操作:

$(\'div[aria-label="Asukohad"] input[type="checkbox"]\').on("change", function() {
var element = $(this);

if(element.is(":checked")) {
    // do nothing.
} else {
    uncheckAll();
}
});

function uncheckAll() {
    $(\'div[aria-label="Asukohad"] input[type="checkbox"]\').removeProp(\'checked\');
}

相关推荐

如何为特定页面取消注册jQuery版本?

为了解决我的网站的问题,我需要通过函数包含特定的jQuery版本。php在我的主题文件夹中,但这会导致一些页面与avada公文包和其他生成器元素的兼容性问题。如何取消注册位于函数中的php脚本。5个特定页面的php?如果删除脚本,公文包和其他构建器元素就会恢复工作。我很抱歉,但我对php知之甚少。。。下面是添加到函数的代码。php:function add_jq_theme() { wp_enqueue_script( \'script-name\', \'https://ajax.google