【请教】【小bug修正】点击按钮修改值

hgwyl 2020-12-08 02:15:18
需求
点击按钮,在10、15、20中循环“改变”

没查出是什么问题……
请指点……

<html>
<head>
<script type="text/javascript">
function edit_delay(){
var delay_timeout = parseInt(document.getElementById('delay_timeout'));
if (delay_timeout==10) {
delay_timeout.value=15;
}
else if (delay_timeout==15) {
delay_timeout.value=20;
}
else if (delay_timeout==20) {
delay_timeout.value=10;
}
}
</script>
</head>
<body>
<input type="button" id="delay_timeout" onClick="edit_delay()" value="10" />
</body>
</html>
...全文
461 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hgwyl 2020-12-08
  • 打赏
  • 举报
回复
谢谢3位大哥~辛苦~~~ (发现20分不够分的,加一些结贴吧……)
锟斤拷锟斤拷 2020-12-08
  • 打赏
  • 举报
回复
...我知道了,你第一个转int是不是想转元素的val,你怎么把元素给转int了...你var delay_timeout = parseInt(document.getElementById('delay_timeout'));是不是想写成var delay_timeout = parseInt(document.getElementById('delay_timeout').value);来着,不过你下面那个delay_timeout.value就用不了了啊,不管了,反正我试了下下面这段代码应该是没问题的

<script type="text/javascript">
        function edit_delay() {
            var delay_timeout = document.getElementById('delay_timeout');
            if (delay_timeout.value == "10") {
                delay_timeout.value = "15";
                alert(delay_timeout.value)
            }
            else if (delay_timeout.value == "15") {
                delay_timeout.value = "20";
                alert(delay_timeout.value)
            }
            else if (delay_timeout.value == "20") {
                delay_timeout.value = "10";
                alert(delay_timeout.value)
            }
        }
    </script>
泡泡鱼_ 2020-12-08
  • 打赏
  • 举报
回复
parseInt(document.getElementById('delay_timeout').value)
howcoder 2020-12-08
  • 打赏
  • 举报
回复
第一点:你获取了元素,但是在parseInt转换时应该是对其value转换 第二点:下面你仅仅是给delay_timeout.value赋值,并不是修改元素的值,况且delay_timeout是int类型,哪可以像对象一样.出对象 正确修改如下

function edit_delay(){
        let delay_timeout = document.getElementById('delay_timeout');
        let value = delay_timeout.value;
        if (value==10) {
            delay_timeout.value=15; 
        }
        else if (value==15) {
            delay_timeout.value=20; 
        }
        else if (value==20) {
            delay_timeout.value=10; 
        }
    }
锟斤拷锟斤拷 2020-12-08
  • 打赏
  • 举报
回复
你那个10、15、25是string吧...

87,994

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧