有一颗油菜 2022-04-29 16:40 采纳率: 11.1%
浏览 55
已结题

HTML 关于input和区分数字

输入两个整数。至少应该支持 [0, 1000] 中的整数。还应该有一个按钮单击该按钮应该实现循环通过区间从较低的输入值开始,到较大的输入值结束(都包括在内),并且有步长大小为一(即,使用递增顺序遍历区间内的每个整数)。用户不是需要以任何特定顺序给出下限和上限 - 您必须以编程方式检查,哪个值是较低的值,哪个值是较高的值。下限值和上限值也可以是相同。“hip”表示可被 3 整除的值,“hop”表示值可被 7 整除,“hiphop”表示可被 3 和 7 整除的值,否则为数值本身。每一个单击按钮时,应先删除旧行,然后再显示由新行生成的行。

问题相关代码,请勿粘贴截图
<!DOCTYPE html>
<html>
<head lang="en">
  <meta charset="UTF-8">
  <link rel="stylesheet" href="task3.css">
  <title>Value</title>
  <p>
    Input1:<input name="purchase_num" value="1" oninput="value=value.replace(/[^\d]/g,'');if(value>1000)value=1000"/>
    Input2:<input name="purchase_num" value="1" oninput="value=value.replace(/[^\d]/g,'');if(value>1000)value=1000"/>
    <input type="reset" value="Values set">
  </p>
</html>

我想要达到的结果

img

  • 写回答

2条回答 默认 最新

  • CSDN专家-showbo 2022-04-29 16:52
    关注

    parseInt转下,比较大小然后交换值后for变量取模下就行了,示例如下

    Input1:<input id="num1" value="1" oninput="resetValue(this)" />
    Input2:<input id="num2" value="1" oninput="resetValue(this)" />
    <input type="reset" value="Values set" onclick="getResult()">
    
    <div id="result"></div>
    <script>
        var num1 = 1, num2 = 1;
        function getResult() {
            num1 = parseInt(document.querySelector('#num1').value)||0
            num2 = parseInt(document.querySelector('#num2').value) || 0
            if (num1 > num2) [num1, num2] = [num2, num1];
            var arr = [];
            for (var i = num1; i <= num2; i++) {
                var hip = i % 3 == 0, hop = i % 7 == 0;
                if (hip && hop) arr.push('hiphop');
                else if (hip) arr.push('hip');
                else if (hop) arr.push('hop');
                else arr.push(i);
            }
            document.querySelector('#result').innerHTML = arr.join('<br>')
        }
        function resetValue(el) {
            var value = el.value;
            value = value.replace(/[^\d]/g, '');
            value = parseInt(value)||0;
            if (value > 1000) value = 1000;
            else if (value < 0) value = 0;
            el.value = value;
        }
    </script>
    

    有帮助麻烦点击采纳该答案,不是结题~

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月30日
  • 已采纳回答 4月30日
  • 创建了问题 4月29日

悬赏问题

  • ¥15 在获取boss直聘的聊天的时候只能获取到前40条聊天数据
  • ¥20 关于URL获取的参数,无法执行二选一查询
  • ¥15 液位控制,当液位超过高限时常开触点59闭合,直到液位低于低限时,断开
  • ¥15 marlin编译错误,如何解决?
  • ¥15 有偿四位数,节约算法和扫描算法
  • ¥15 VUE项目怎么运行,系统打不开
  • ¥50 pointpillars等目标检测算法怎么融合注意力机制
  • ¥20 Vs code Mac系统 PHP Debug调试环境配置
  • ¥60 大一项目课,微信小程序
  • ¥15 求视频摘要youtube和ovp数据集