Как я могу ограничить диапазон чисел, которые можно записать в представлении в ASP.NET не используете валидацию?

#javascript #html #jquery #asp.net-core #razor

#javascript #HTML #jquery #asp.net-core #бритва

Вопрос:

Хорошо, на мой взгляд, у меня есть поле ввода для вставки числа, подобного этому:

 <div class="form-group">
<div>Number</div>
<input asp-for="Number" class="form-control" />
<span asp-validation-for="Number" class="text-danger"></span>
</div>
 

введите описание изображения здесь

И я хочу ограничить диапазон этого значения между двумя числами, теперь ответ, который кто-то обычно дает мне, заключается в том, чтобы сделать это:

 [Range(0, 249,
ErrorMessage = "Value for {0} must be between {1} and {2}.")]
public byte Number { get; set; }
 

но я не хочу этого делать, чего я действительно хочу, так это того, чтобы стрелки в поле ввода в представлении буквально не позволяли мне вводить число, превышающее диапазон или меньшее, чем другое число.

Так, например, если я продолжаю нажимать стрелку вверх, чтобы увеличить число, когда оно уже достигло вершины 249, если я продолжу нажимать стрелки, оно больше не сможет увеличить это число, и аналогично, если я попытаюсь нажать стрелку вниз, оно должно быть в состоянииопуститесь ниже нуля или позвольте мне ввести отрицательное число.

Как я могу это сделать? Мне нужно использовать скрипт для этого или есть другой вариант?

Ответ №1:

Вы можете попробовать сделать так:

 <input  asp-for="Number" class="form-control" min="0" max="249"/>
 

Результат:
введите описание изображения здесь