默认的OnChange Event JavaScript函数,用于检查所有输入数字字段的输入字段是数字还是字母

时间:2019-04-15 19:43:11

标签: javascript jquery html

我大约有30个输入字段,这些输入字段以数字作为输入。有什么方法可以为所有数字输入字段编写单个默认的OnChange事件JavaScript函数,而不是编写30个JavaScript函数来检查输入的输入是数字还是文本?如果输入为NaN,则需要在该输入字段中添加红色边框。谢谢。抱歉,第一次没有添加代码。

HTML代码

<tr>
<td>
Fund1:<input type="text" class="" name="FundAmount1" id="Fund1" onchange="ValidateIsNaN()" />
</td>
<td>
Fund2:<input type="text" class="" name="FundAmount2" id="Fund2" />
</td>
<td>
Fund3:<input type="text" class="" name="FundAmount3" id="Fund3"/>
</td>
<td>
Fund4:<input type="text" class="" name="FundAmount4" id="Fund4"/>
</td>
<td>
Fund5:<input type="text" class="" name="FundAmount5" id="Fund5" />
</td>
.
.
.
Total:<input type="text" class="" name="Total" id="TotalId" />
</tr>

JavaScript代码

<script type="text/javascript">
function ValidateIsNaN(){
var inputValue = document.getElementByName('Fund1').value;
if (isNaN(inputValue )) 
{
    $("Fund1").addClass("redColorBorderCSS");
            alert("Enter number only")
            return false;
}
}
</script>

1 个答案:

答案 0 :(得分:1)

您当然可以通过许多不同的方式测试数字。

  1. 使用<input type="number"> HTML元素
  2. 在onChange事件中,您可以var result = parseInt(value, 10)var result = parseFloat(value, 10)并使用isNaN(result)进行测试
  3. 您可以编写正则表达式来验证输入值/^[0-9]+$//^[0-9]+(\.[0-9]+)?$/