如何总结输入字段中输入的特定值
How to sum up specific values that are entered in input field?
我的脚本是:
<script type = "text/javascript" >
jQuery(document).ready(function($) {
var $inputs = $('#input_6_1, #input_6_2, #input_6_3'),
$sumInput = $('#input_6_4');
$inputs.change(function() {
var oneSum = 0;
$inputs.each(function() {
if ($(this).val() == "Y" || "y") {
oneSum += $(this).val(), 1;
}
});
$sumInput.val(oneSum);
});
});
</script>
如果我在三个输入字段中添加Y YY,则输出值为0YYY,但我想将值求和为3,因为输入字段中有三个 Y,并将3显示为输出。
我该怎么做?
HTML是
<label class="gfield_label" for="input_6_1">Number</label>
<div class="ginput_container ginput_container_number">
<input name="input_1" id="input_6_1" value="" class="medium" tabindex="1" aria-invalid="false" type="text">
</div>
</li>
<li id="field_6_2" class="gfield field_sublabel_below field_description_below">
<label class="gfield_label" for="input_6_2">Number</label>
<div class="ginput_container ginput_container_number">
<input name="input_2" id="input_6_2" value="" class="medium" tabindex="2" aria-invalid="false" type="text">
</div>
</li>
<li id="field_6_3" class="gfield field_sublabel_below field_description_below">
<label class="gfield_label" for="input_6_3">Number</label>
<div class="ginput_container ginput_container_number">
<input name="input_3" id="input_6_3" value="" class="medium" tabindex="3" aria-invalid="false" type="text">
</div>
</li>
<li id="field_6_4" class="gfield field_sublabel_below field_description_below">
<label class="gfield_label" for="input_6_4">Sum Number</label>
<div class="ginput_container ginput_container_number">
<input name="input_4" id="input_6_4" value="" class="medium" tabindex="4" aria-invalid="false" type="text">
</div>
</li>
代码片段:
jQuery(document).ready(function($) {
var $inputs = $('#input_6_1, #input_6_2, #input_6_3'),
$sumInput = $('#input_6_4');
$inputs.change(function() {
var oneSum = 0;
$inputs.each(function() {
if ($(this).val() == "Y" || "y") {
oneSum += $(this).val(), 1;
}
});
$sumInput.val(oneSum);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<label class="gfield_label" for="input_6_1">Number</label>
<div class="ginput_container ginput_container_number">
<input name="input_1" id="input_6_1" value="" class="medium" tabindex="1" aria-invalid="false" type="text">
</div>
</li>
<li id="field_6_2" class="gfield field_sublabel_below field_description_below">
<label class="gfield_label" for="input_6_2">Number</label>
<div class="ginput_container ginput_container_number">
<input name="input_2" id="input_6_2" value="" class="medium" tabindex="2" aria-invalid="false" type="text">
</div>
</li>
<li id="field_6_3" class="gfield field_sublabel_below field_description_below">
<label class="gfield_label" for="input_6_3">Number</label>
<div class="ginput_container ginput_container_number">
<input name="input_3" id="input_6_3" value="" class="medium" tabindex="3" aria-invalid="false" type="text">
</div>
</li>
<li id="field_6_4" class="gfield field_sublabel_below field_description_below">
<label class="gfield_label" for="input_6_4">Sum Number</label>
<div class="ginput_container ginput_container_number">
<input name="input_4" id="input_6_4" value="" class="medium" tabindex="4" aria-invalid="false" type="text">
</div>
</li>
似乎替换
if( $( this ).val() == "Y" || "y" ) {
oneSum += $( this ).val(), 1;
if( $( this ).val() == "Y" || $( this ).val() == "y" ) {
oneSum += 1;
对于是/否输入,您实际上应该使用复选框。然后你可以数一下复选框的数量。在这种情况下,您可以直接在jquery选择器中按值查询,然后计算找到的输入的数量。
$(function() {
console.log($('input[value=Y]').length);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input value="Y">
<input value="N">
<input value="Y">
这也适用于单选按钮组,但没有看到你的HTML,我决定使用最简单的输入法
修改后的代码:)
jQuery( document ).ready( function( $ ) {
var $inputs = $( '#input_6_1, #input_6_2, #input_6_3' ),
$sumInput = $( '#input_6_4' );
$inputs.change( function() {
var oneSum = 0,val='';
$inputs.each( function() {
if( $( this ).val() == "Y" ||$( this ).val() == "y" ) {
oneSum +=1;val+=$( this ).val();
}
} );
$sumInput.val( oneSum+val );
} );
} );
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<label class="gfield_label" for="input_6_1">Number</label><div class="ginput_container ginput_container_number"><input name="input_1" id="input_6_1" value="" class="medium" tabindex="1" aria-invalid="false" type="text"></div></li><li id="field_6_2" class="gfield field_sublabel_below field_description_below"><label class="gfield_label" for="input_6_2">Number</label><div class="ginput_container ginput_container_number"><input name="input_2" id="input_6_2" value="" class="medium" tabindex="2" aria-invalid="false" type="text"></div></li><li id="field_6_3" class="gfield field_sublabel_below field_description_below"><label class="gfield_label" for="input_6_3">Number</label><div class="ginput_container ginput_container_number"><input name="input_3" id="input_6_3" value="" class="medium" tabindex="3" aria-invalid="false" type="text"></div></li><li id="field_6_4" class="gfield field_sublabel_below field_description_below"><label class="gfield_label" for="input_6_4">Sum Number</label><div class="ginput_container ginput_container_number"><input name="input_4" id="input_6_4" value="" class="medium" tabindex="4" aria-invalid="false" type="text"></div></li>
相关文章:
- 为什么不't Javascript对我的输入值进行了一些重新检查
- 可以't让我的if语句处理js中的html表单输入
- 名称输入的索引
- 如何编写HTML输入的JS内联
- 要求输入在数据列表中
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- 让文本输入幻灯片显示输入时的新文本输入?然后向后滑动
- 如何将输入(type=text)从html表单传递到javascript函数
- 单击jquery清除输入值
- 而循环只设置php中输入字段中的第一个值
- 在输入字段中将最小金额设置为
- jQuery自定义验证比较多个输入的序列
- Sails.js:同时发布文本输入和一个文件
- 使用javascript检查多个输入值,并在1次检查中标记多个输入框
- 如何在输入字段中的按钮的帮助下打开日历,该字段的类型为“=”;日期”;
- 使用jquery在单击时在单元格中输入值
- Ajax文件加载和<输入>文件加载
- 是否可以将一个函数输入连接到另一个函数调用的文本
- 将值输入到对象,然后该对象推送到数组
- 如何总结输入字段中输入的特定值