为什么我在 JavaScript 中的 for 循环导致我的网页冻结

Why is my for loop in JavaScript causing my webpage to freeze?

本文关键字:我的 网页 冻结 循环 for JavaScript 中的 为什么      更新时间:2023-09-26

我目前正在处理一个项目,如果用户输入的值不是数字,我需要弹出一个警报框。我创建了一个 for 循环来执行此操作并且它可以工作,但是每当我输入不是数字的内容时,我的网页就会冻结,我必须关闭它。我不知道我做错了什么。这是我的代码。

 var Y=1
  for(var i = 0; i < Input.length; i++)
  {
    if(isNaN(Input.charAt(i)))
    {
      alert("Parameter is Not A Number");
      Y = 0;
    }
  }

如果您使用的是 HTML5,则只需指定即可将用户输入限制为数值

<input type="number">

如果你想坚持使用警报框和东西,试试这个

<input type="input" id="edit1"/>

Js

$(document).ready(function(){
    $('[id^=edit]').keypress(validateNumber);
});
var Y=1
function validateNumber(event) {
 var key = window.event ? event.keyCode : event.which;
 if ( key < 48 || key > 57 ) {
      alert("Parameter is Not A Number");
      Y = 0;
    }
    else return true;
};