javascript - 检查 n 个元素是否包含设置为 true 的 data 属性

标签 javascript jquery

我有一个网站,其中有五个复选框,一个 div 包含另一个 div,每个 div 包含五个隐藏输入,其值为 1empty。该值来自 DB。

这是一个用 div 表示 div 容器的示例:

<input checkbox value="a">
<input checkbox value="b">
<input checkbox value="c">
<input checkbox value="d">
<input checkbox value="e">
<div class="container">
    <div class="content" data-name="combine">
        <input type="hidden" value="" data-name="a" />
        <input type="hidden" value="" data-name="b" />
        <input type="hidden" value="" data-name="c" />
        <input type="hidden" value="" data-name="d" />
        <input type="hidden" value="" data-name="e" />
    </div>

    <div class="content" data-name="combine">
        <input type="hidden" value="1" data-name="a" />
        <input type="hidden" value="" data-name="b" />
        <input type="hidden" value="" data-name="c" />
        <input type="hidden" value="1" data-name="d" />
        <input type="hidden" value="" data-name="e" />
    </div>
</div>

javascript代码中我有这个片段:

if(elementLength > 0) {

    $("[data-name='combine'] div.tagsProds").each(function() {

        var element = $(this);

        $.each(enabledChecks,function(i, v) {

            if(element.find("input[name='"+v+"']").val() == "") {
                element.append("<div class='blocked'></div>");
                element.unbind("click");
                element.addClass("js_noSortable");
            }

        });

    });

}

javascript 首先检查 div.container 是否有子级,如果有子级,代码将迭代每个子级。在每个 child 上,我迭代五个复选框(enabledChecks),然后查看隐藏的输入是否为空。如果五个输入为空,则附加“div.blocked”,我需要什么。

最佳答案

由于我没有足够的声誉来撰写评论,所以我写了一个答案。

首先,如果您正在寻找一种使用 jQuery 函数的方法,我认为您的答案非常有趣,但由于我不知道任何函数可以做到这一点,我认为您可以创建一个array(),当您检查输入是否有空值时,将其推送到数组,当循环完成时,您检查数组的length () 如果它与您的复选框数量匹配,则附加 .blocked

关于javascript - 检查 n 个元素是否包含设置为 true 的 data 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25813485/

相关文章:

javascript - Threejs 尝试实现 ShaderToy 时出错

javascript - 单击添加行并从列表中选择1个选项时,我想获得总和值吗?

javascript - Highcharts 系列更新动画

javascript - 为什么我不能使用 slice 或 lodash remove 从这个数组中删除项目?

javascript - 使用 javascript 生成的 html 代码不适用于 jquery sortable

javascript - 从js数组中删除双引号

javascript - 如何清除ajax响应

javascript - 为什么我的 Jquery 和 Javascript 图表没有出现?

javascript - 菜单切换上的 jQuery slideToggle 跳转动画

php - 如何为用户显示电子邮件地址但对机器人隐藏?有没有使用 PHP、Javascript 或 Jquery 的简单方法?