【问题标题】:JavaScript for loop [closed]JavaScript for 循环 [关闭]
【发布时间】:2016-08-26 17:51:59
【问题描述】:

我不知道为什么我的代码无法运行,有人可以帮助我吗?

<!DOCTYPE html>
<html>
<head>
    <title>
    excerise
    </title>
    <style></style>
    </head>
    <body>


<script>
    function multiple ( )
var i=0;
for (i=pooya;i<=5;i++)
{
 document.getElementById("pooya").innerHTML = i;
}
    }
    
</script>
number<br>
<input type="text" id="pooya">
        <button onclick=" multiple ()">try it</button>
<p>Explanation:</p>

<p>This for loop starts with i=0.</p>

<p>As long as <b>i</b> is less than, or equal to 5, the loop will continue to run.</p>

<p><b>i</b> will increase by 1 each time the loop runs.</p>
        
    
    </body>
</html>

【问题讨论】:

  • document.getElementById("pooya").value = i;
  • 不要一遍又一遍地重复同一个句子,这至少没有帮助。描述您正在尝试做的事情,以及您遇到的问题
  • 试试document.getElementById("pooya").value += i;
  • 缺少{。下次使用JSHint 确保您没有此类拼写错误。

标签: javascript


【解决方案1】:

由于以下问题,代码无法运行

function multiple ( )。虽然有一个关闭},但没有打开{,这标志着函数体的开始。 函数体应该在 { } 内。示例

function multiple() { //Rest of code}

for (i=pooya;i&lt;=5;i++){}。这部分将不起作用。 pooya 是元素的 id,如果您将其分配给 i。如果你想这样做,用一些值初始化pooya

document.getElementById("pooya").innerHTML = 我。您是否尝试更新输入框?如果是这样,那么您必须使用document.getElementById("pooya").value = i

在这种情况下,您将始终在输入框中看到 5 作为更新值。

如果你这样做document.getElementById("pooya").innerHTML += iyou will see "entered value"+12345; Example:If you give input as4the input box will be updated with4012345`

查看JSFIDDLE

编辑

function multiple ( ){
var i= document.getElementById("pooya").value;  // Will take the entered value
document.getElementById("pooya").value=""; // will empty the inpt
for(i;i<=5;i++){ 
 document.getElementById("pooya").value += i; // will update input box

  }
}

Updated jsFidlle

【讨论】:

  • 是的,但是如果我输入 3,我的输出应该像 345 一样更新的框
  • @PooyaMahmoodi 检查更新的答案
【解决方案2】:

1) 您在“multiple()”之后缺少一个 {。它需要以 { 开头的格式正确。

2) 你需要在使用它之前获取“pooya”的值。 这样做。

 <script>
    //<![CDATA[
    function multiple(){
        var pooya = document.getElementById("pooya").value;
        for (i=pooya;i<6;i++)
        {
         alert("testing");
        }
    }
    //]]>
    </script>

【讨论】:

  • 不应回答基于简单拼写错误的堆栈溢出问题,而应标记或投票关闭(或关闭并最终删除)。由于您还没有举报权限,所以您不应该回答。
猜你喜欢
  • 2017-02-19
  • 1970-01-01
  • 2017-06-25
  • 2020-09-03
  • 1970-01-01
  • 2019-02-10
  • 2014-02-12
  • 2018-05-10
相关资源
最近更新 更多