我的函数有一个输入和2个输出。它总是必须从最小输入5开始,并且必须在输出中给我3&4。和6给出4&5。它还会跳过奇数(当您提供奇数时,它会保留最后输出的值)。
仅在我的代码出问题的地方。因为例如当我放入100时,我需要复制的函数给出53&54作为输出。而我在100上只给出-1和-2,所以我得到98&97。
我也想让5给出3&4,然后当您输入6时它需要给出4&5,只有在没有6为NaN或3&4的情况下,我才能给它一个值。
这是我需要复制的内容(在左侧输入字段中输入5):https://www.schuttinggigant.com/
函数的GIF :https://gyazo.com/6a65b65ee5bedddfe35851f78aa8dc27
我的html:
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="InputField InputMeters">
<input type="tel" name="iFenceMeters" id="FenceMeters" class="AutosubmitCalculator calcTotal" data-minimum-length="1" tabindex="1" placeholder="00" maxlength="3" value="" />
<div class="FormExclamation Tipped Hidden" id="FormCalculatorExclamationFence">0</div>
</div>
Output:
<div class="SummaryRow">
<strong>Schermen</strong>
<input name="schermentotaal" type="text" id="schermentotaal" readonly="readonly" value="" />
</div>
<div class="SummaryRow">
<strong>Palen en onderplaten</strong>
<input name="schermentotaal2" type="text" id="schermentotaal2" readonly="readonly" value="" />
</div>
我的Jquery:
$(".calcTotal").on('input', function(elem) {
let num = $(this).val();
if (num % 2 !== 0) {
num--;
}
$("#schermentotaal").val(num - 2);
$("#schermentotaal2").val(num - 1);
});
更新:我不知道该怎么做,但我可能需要代替-1和-2做一些调整? - X%。只是一个主意。
答案 0 :(得分:1)
在更新HTML时,您从num
中减去的次数过多。将功能更改为此:
$(".calcTotal").on('input', function() {
let num = $(this).val();
if (num % 2 === 0) {
num--;
}
$("#schermentotaal").val(num - 1);
$("#schermentotaal2").val(num);
});
如果您想知道的话,我只更改了最后两行。
答案 1 :(得分:0)
$(".calcTotal").on('input', function(elem) {
let num = $(this).val();
if (num % 2 === 0 && num > 2) { // why num>2 because num-2 will be 0 and you don't wont to display 0
$("#schermentotaal").val(num - 2);
$("#schermentotaal2").val(num - 1);
}
});