【问题标题】:Make the rank input increase and decrease by one number and stop [duplicate]使rank输入增加和减少一个数字并停止[重复]
【发布时间】:2018-12-13 02:57:42
【问题描述】:

我只想让排名输入增加和减少一个数字然后停止,但它继续在值旁边放一个:

$(".plus").click(function() {
  var x = $(".minirank").val();
  $(".minirank").val(++x);
  var x2 = $("#Bigrank").val();
  $("#Bigrank").val(x2 + 1);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<input id="Bigrank" value="900">
<br>
<br>
<br>
<button class="plus">+</button>
<input class="minirank" value="0">
<button class="less">-</button>

【问题讨论】:

  • 你需要解析Int(x)。

标签: javascript jquery html


【解决方案1】:

问题在于,当文本框的值是字符串时,当您将数字添加到像x2+1 这样的字符串时,JavaScript 会将数字转换为字符串并将两个字符串连接起来。您可以使用++ 运算符,就像对minirank 所做的那样,它强制JavaScript 将字符串转换为数字(或者如果您愿意,也可以手动将其转换,例如使用parseInt())。对于减少按钮,只需使用--

$(".plus").click(function() {
  var x = $(".minirank").val();
  $(".minirank").val(++x);
  var x2 = $("#Bigrank").val();
  $("#Bigrank").val(++x2);
});

$(".less").click(function() {
  var x = $(".minirank").val();
  $(".minirank").val(--x);
  var x2 = $("#Bigrank").val();
  $("#Bigrank").val(--x2);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<input id="Bigrank" value="900">
<br>
<br>
<br>
<button class="plus">+</button>
<input class="minirank" value="0">
<button class="less">-</button>

【讨论】:

  • 它应该最适合input type="number"AFAIK
  • 我知道,但我希望 Bigrank 值只增加一且不再增加
  • 然后将代码放入if 语句中。
  • 我希望值变成 901 而不是仅仅 900 并且不要超过它
  • 然后用if(x2 &lt; 901) { }包围代码。
猜你喜欢
  • 2022-08-09
  • 2017-09-21
  • 2021-09-16
  • 2018-07-25
  • 1970-01-01
  • 2016-11-09
  • 1970-01-01
  • 2022-06-15
  • 1970-01-01
相关资源
最近更新 更多