如何根据隐藏的具有值的每种输入类型计算<ul id="room_1">
<li>
<div class="wrap participantlist wrap_body" style="color:#000000">
<input type="hidden" name="hidden" value="1" id="channel">
</div>
</li>
<li>
<div class="wrap participantlist wrap_body" style="color:#000000">
<input type="hidden" name="hidden" value="2" id="channel">
</div>
</li>
<li>
<div class="wrap participantlist wrap_body" style="color:#000000">
<input type="hidden" name="hidden" value="" id="channel">
</div>
</li>
</ul>
?
HTML:
var participantLength = $("#room_1 li").length;
console.log(participantLength);
使用Javascript:
<input type="hidden" name="hidden" value="1" id="channel">
具有值的隐藏输入数量为2
<input type="hidden" name="hidden" value="2" id="channel">
和
2
所以输出应为<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<listDatasetsResponse xmlns="http://www.algorithmics.com/schema">
<status>OK</status>
<datasets size="31">
<dataset>
<id>stress_20150910_20150910_160259</id>
<basedOn>Mimm_20150910_20150910_030922</basedOn>
<active>false</active>
<sandbox>true</sandbox>
<ownedBy>admin</ownedBy>
<createdOn>2015-09-10T16:04:24.199-04:00</createdOn>
<createdBy>rtcesupp</createdBy>
<evaluated>true</evaluated>
<stopped>false</stopped>
</dataset>
<dataset>
<id>imm_20150910_20150910_140315</id>
<basedOn>Mimm_20150910_20150910_030922</basedOn>
<active>true</active>
<sandbox>true</sandbox>
<ownedBy>admin</ownedBy>
<createdOn>2015-09-10T14:04:42.696-04:00</createdOn>
<createdBy>rtcesupp</createdBy>
<evaluated>true</evaluated>
<stopped>false</stopped>
</dataset>
</datasets>
</listDatasetsResponse>
答案 0 :(得分:1)
您可以使用.each
函数迭代输入元素,如果不是空值,则匹配如下:
var inc = 0;
$('input:hidden').each(function(){
if ( this.value !== "" )
inc++; // increment by 1
});
alert(inc); // get final output for input that not empty
或者只是检查选择器
alert($('input:hidden[value!=""]').length);
答案 1 :(得分:1)
你可以使用这个
$('input:hidden[value!=""]').length
我注意到您对两个输入使用了相同的ID(id="channel"
)。
请注意,ID应该是唯一的,如果要使用相同的名称,请使用class *
<强> JSFIDDLE DEMO 强>
答案 2 :(得分:1)
答案 3 :(得分:1)
你去,它应该显示那些有价值的输入数
$("ul li input[value!='']").length
答案 4 :(得分:1)
你可以通过以下方式获得:
alert($('input:hidden[value!=""]').length);
有关详细信息,请参阅: Selecting empty text input using jQuery