繁体   English   中英

在循环内调用函数

[英]Calling a Function Inside a Loop

我想问一下是否可以使用Javascript在循环内调用函数。

我想创建一个文本字段,该文本字段在不使用HTML“数字”输入的情况下递增和递减按钮。

有没有一种简单的方法可以将函数归一化并使用循环?

 function increment() { document.getElementById("myNumber").stepUp(1); } function increment2() { document.getElementById("myNumber2").stepUp(1); } 
 Number: <input type="number" id="myNumber"> <button onclick="increment()">+</button> Number: <input type="number" id="myNumber2"> <button onclick="increment2()">+</button> 

如何将id作为参数传递给函数:

function increment(id) {
    document.getElementById(id).stepUp(1);
}

接着:

Number: <input type="number" id="myNumber">
<button onclick="increment('myNumber')">+</button>

Number: <input type="number" id="myNumber2">
<button onclick="increment('myNumber2')">+</button>

您可以在函数调用中传递输入的id

 function increment(elem) { document.getElementById(elem).stepUp(1); } 
 Number: <input type="number" id="myNumber"> <button onclick="increment('myNumber')">+</button> Number: <input type="number" id="myNumber2"> <button onclick="increment('myNumber2')">+</button> 

其他答案肯定可以解决任务,但是...强烈建议不要立即使用'onclick'和类似的属性通过JavaScript处理事件(例如,请参阅“ 为什么在HTML中使用onClick()是一种不好的做法? ”) )。

推荐的方法是addEventListener('click', callback) ,因为代码更易于维护,因此可以清除。

请参阅https://jsfiddle.net/zrx2xqgg/作为您特定任务的示例。 输入的选择器作为属性传递给按钮。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM