2 qq 34593006 qq_34593006 于 2017.01.16 15:36 提问

js setTimeout 参数:js语句疑问

代码如下。setTimeout的js语句,如果单独拿出来执行是对的,但是放在setTimeout中就会报错:n is not defined

 <head>
<script type="text/javascript">
    function timed() {
        var n = 0;
        for (n = 1; n <= 5; n++) {
            setTimeout("document.getElementById('txt').value = "+"n"+" + '秒;'", 1000);
            //document.getElementById('txt').value = n + '秒';
        }
    }
</script>
</head>
<body>
<form>
    <input type="button" value="显示计时的文本" onclick="timed()"/>
    <input type="text" id="txt"/>
</form>

2个回答

strongerzhi
strongerzhi   2017.01.16 15:50

把n的双引号去掉就好了

qq_34593006
qq_34593006 搞混了。。谢谢!~
11 个月之前 回复
strongerzhi
strongerzhi 一秒一秒显示是需要计时器,这个是超时函数
11 个月之前 回复
qq_34593006
qq_34593006 为什么计时不会一秒一秒显示,而是直接变成5s?
11 个月之前 回复
qq_34593006
qq_34593006 句子没问题了,还有一个问题。。。
11 个月之前 回复
ericjrf
ericjrf   2017.01.16 16:10

n is not defined的报错是n没有定义就直接使用了

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!