javascript - Jquery输出奇数跳过

标签 javascript jquery html css

我的函数有一个输入和两个输出。它总是必须从最小输入 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%。只是一个想法。

最佳答案

当您更新 HTML 时,您从 num 中减去太多次。将您的功能更改为:

$(".calcTotal").on('input', function() {
    let num = $(this).val();
    if (num % 2 === 0) {
        num--;
    }
    $("#schermentotaal").val(num - 1);
    $("#schermentotaal2").val(num);
});

我只更改了最后两行,如果你想知道的话。

关于javascript - Jquery输出奇数跳过,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53776359/

相关文章:

javascript - 实现 css slider 不工作,显示灰色背景

javascript - 将音位间隙转化为类固醇

javascript - jQuery.height() 设置的高度高于参数中指定的高度

javascript - 当除以类型对象时,类型 undefined variable 如何给出类型编号?

html - 带有美化功能的 Vscode 不会缩进 django html 模板

javascript - 单击时为现有下拉菜单设置动画

javascript - 点钞机可以在 Chrome、Safari (Windows)、Opera 和 IE 中运行,但不能在 Firefox 中运行。为什么?

javascript - firebug 上的 "this._processor is null"错误是什么?

javascript - 过滤 HTML 表格 - Ajax

最后打印页面的 HTML 页脚