【发布时间】:2016-05-06 00:32:13
【问题描述】:
我有多个输入,我想设置每个输入部分的最小值。例如,我设置了100 的最小输入值。因此,如果所有输入中任何输入的值都小于100,则会显示错误。否则,如果所有输入的值大于或等于100,则会显示成功消息。
在我的情况下,如果我在输入中输入小于值,则会显示错误,但如果我在其他输入中输入更大的值,则会显示成功消息。
<div class="color-quantity not-selected-inputs selected-input-wrap">
<input type="text" class="custom_small" name="custom_small" onkeydown="return myFunction(event);">
</div>
<div class="color-quantity not-selected-inputs selected-input-wrap">
<input type="text" class="custom_medium" name="custom_medium" onkeydown="return myFunction(event);">
</div>
<input type="text" class="custom_large" name="custom_large" onkeydown="return myFunction(event);">
</div>
jQuery('.selected-input-wrap > input').map(function () {
var total = 0;
jQuery('input', this).each(function () {
total += this.value * 1;
});
if (parseInt(total) <= 99) {
jQuery(".select-quantity").html('<p>Please select at least 100 for each color</p>');
} else if (parseInt(total) >= 100) {
jQuery(".select-quantity").html('<p>Success</p>');
}
请查看代码并帮助我找出问题
【问题讨论】:
-
你想在哪里验证?
-
@dlopez 让我试试这个..
-
另外,你正在关闭一个你没有打开的 div
-
试试这个选择器 jQuery('.selected-input-wrap>input')。据我所知,
<div>标签没有任何价值。 -
你为什么使用
map(),它用于从一组匹配的元素创建一个数组。我认为您应该考虑改用each()。您还应该将选择器更改为.selected-input-wrap input,并且您需要遍历所有元素以获取total之前您对if条件执行任何操作。
标签: javascript jquery if-statement