我的表单上有一个用户必须填写一个月的文本框,我想出了如何输入数值,但我希望我的文本框能够接收1到12之间的数值。我已经尝试了min ,最大但没有一个工作。
HTML代码:
<input type="text" class="form-control" name="Month" id="Month"onkeypress="return isNumber(event)"maxlength="2"placeholder="MM"required="required">
JavaScript代码:
<script type="text/javascript">
function isNumber(evt) {
evt = (evt) ? evt : window.event;
var charCode = (evt.which) ? evt.which : evt.keyCode;
if (charCode > 31 && (charCode < 48 || charCode > 57)) {
return false;
}
return true;
}
</script>
答案 0 :(得分:0)
您应该放弃额外的JS,而是使用<input type="number">
和min
/ max
属性:
<input type="number" class="form-control" name="Month" id="Month" min="1" max="12" placeholder="MM" required>
答案 1 :(得分:0)
以下是检查月份的简单代码,如果数量超出限制,它将重置并要求再次输入
function checkMonth(textbox){
if(!(textbox.value > 0 && textbox.value <= 12 )){
textbox.value = "";
textbox.focus();
}
}
<input type="number" id="month" min="1" max="12" onKeyUp="checkMonth(this)">