检查“检查”所有儿童的价值隐藏输入
ANSWER
*.com/a/18676076/2240163检查“检查”所有儿童的价值隐藏输入
你不能有隐藏的输入是一个复选框,所以不会有检查 属性。您可以使用type =“复选框”并使用display:none 隐藏它,如果您需要它是复选框,或者您可以简单地使用带有0或1的隐藏 输入来模拟它。
我有一个容器与隐藏字段来容纳数据。
<Panel id="jointlist">
<input type="hidden" id="jl_C_Head_back_conf" name="C_Head_back_conf" data-location="Head, back"/>
<input type="hidden" id="jl_C_Head_back_text" name="C_Head_back_text"/>
<input type="hidden" id="jl_C_Head_front_conf" name="C_Head_front_conf" data-location="Head, front"/>
<input type="hidden" id="jl_C_Head_front_text" name="C_Head_front_text"/>
</Panel>
我试图找到哪些输入元素有checked
值为true。
伊夫试图
var jointlist = $("#jointlist");
var items = jointlist.find("input[id*='_conf']:checked");
但这返回与children
下所列的所有输入的父节点。图片中的项目是真实的,还有一个真实的项目,但其余的132个剩余项目都是假的。
所以后来我试图遍历所有的孩子找到选中的元素,所以我试图
jointlist.each(function() {
var curItem = $(this);
var chldrn = curItem[0].children;
for (i = 0; i < chldrn.length; i++) {
console.log(chldrn[i].checked);
}
});
这将返回子元素的HTML
。 所以我不知道如何访问儿童的checked
属性。
编辑 这是for循环的截图console.log(chldrn[i].checked);
你可以先获取所有输入元素:然后循环
var inputs = document.getElementById('jointlist').getElementsByTagName('input');
通过,并得到检查值像
inputs[i].getAttribute('checked');
var inputs = document.getElementById('jointlist').getElementsByTagName('input');
var res;
for (var i = 0; i < inputs.length; i++) {
if (inputs[i].getAttribute('checked') === 'true') {
res = inputs[i];
}
}
console.log(res);
<Panel id="jointlist">
<input type="hidden" id="jl_C_Head_back_conf" name="C_Head_back_conf" data-location="Head, back" checked="true" />
<input type="hidden" id="jl_C_Head_back_text" name="C_Head_back_text"/>
<input type="hidden" id="jl_C_Head_front_conf" name="C_Head_front_conf" data-location="Head, front"/>
<input type="hidden" id="jl_C_Head_front_text" name="C_Head_front_text"/>
</Panel>
对不起,但看看我添加的最后一个截图。当我登录'inputs'时,我会看到相同的窗口。然后当我输入[i] .attributes时出现134个未定义的值。检查' – morne
@morne看到编辑答案 – FrankCamara
似乎是不可能的这样。在这里看到:http://*.com/a/18676076/2240163 – morne
你不看'length'财产看到它__0__和隐藏的元素没有与工作[':checked'选择(https://api.jquery.com/checked -selector /)所以它返回正确的 – Satpal
其中是复选框?它类型=“隐藏”不是类型=“复选框” –
也是你试图得到':检查'但没有元素 –