限制输入数字框的取值范围

restrict the input Number box with value range

如何限制输入数字框为1-10整数部分和0-59小数部分。如果用户输入值 11.00 或 2.60 或 0 则不应被允许。如何限制值的整数部分和小数部分?

<input type="number"   class="form-control format-text emphrs" asp-for="@Model.attendanceLogList[i].NormalHrs"  />

您可以像下面这样更改您的代码:

<input type="number" class="form-control format-text emphrs" oninput="validate(this)" id="number" asp-for="@Model.attendanceLogList[i].NormalHrs"/>
<div id="error" class="text-danger"></div>
@section Scripts
{ 
<script>
    var validate = function (e) {
        var t = e.value;
        e.value = (t.indexOf(".") >= 0) ? (t.substr(0, t.indexOf(".")) + t.substr(t.indexOf("."), 3)) : t;
    }
    $("#number").keyup(function () {
        var x = parseFloat($("#number").val());
        var a = Math.floor(x);
        var b = (x % 1).toFixed(2).substring(2);
        var c = (a + 0.59).toFixed(2);
        $("#error").empty();
        if (b > 59) {
            $("#number").val(c);
            $("#error").text("Please enter with 0-59 decimal part")
        }
        if (a > 10) {
            $("#number").val(10);
            $("#error").text("Please enter with 1-10 integer part")
        }
        if (a <1) {
            $("#number").val(1);
            $("#error").text("Please enter with 1-10 integer part")
        }
    })
</script>
}