我有一个文本框。
<input type="number" min="0" max="999">
但是我可以在文本框中输入任意数量的数字。
由于我将最大值设为999,我不希望发生这种情况。有人知道解决方法吗?我尝试了 ng-maxlength
和 maxlength
,但都不起作用。
我有一个文本框。
<input type="number" min="0" max="999">
但是我可以在文本框中输入任意数量的数字。
由于我将最大值设为999,我不希望发生这种情况。有人知道解决方法吗?我尝试了 ng-maxlength
和 maxlength
,但都不起作用。
max
属性指定我们可以指定的最大可能值。
有关详细信息,请 查看此链接。
我认为以下内容对您会有所帮助,
//maxlength="10"
<input type="number" onKeyPress="if(this.value.length==10) return false;" />
onKeyPress={(e) => { if (e.target.value.length >= 12) e.preventDefault() }}
。 - Isaac Muniz<input type="number" max="999" onkeypress="if (this.value.length > 2) return false;"/>
已在Chrome、Firefox和Edge中进行测试。
试一试
var jimApp = angular.module("mainApp", []);
jimApp.controller('mainCtrl', function($scope){
var oldNumber = 0;
$scope.numberChanged = function(number){
if(number<=999){
oldNumber = number;
}
return oldNumber;
};
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="mainApp" ng-controller="mainCtrl">
<input type="number" min="0" max="999" ng-model="jimNum" ng-change="jimNum = numberChanged(jimNum);">
</div>
<input type="number" min="0" max="999"
onKeyUp="if(this.value>999){this.value='999';}else if(this.value<0){this.value='0';}"
id="yourid">
这里有一个使用 JQuery 的 JSFiddle。
请提供您的输入。
<input type="number" id="num">
脚本:
$("#num").keypress( function(e) {
var current_val = $(this).val();
var typing_char = String.fromCharCode(e.which);
if (parseFloat(current_val + "" +typing_char) > 900) {
return false;
}
})
var v = this.value; if (v > 999) this.value = v.substr(0,2)
这样,再加上针对负数的额外逻辑(无论它们是什么)。 - RobG如果你限制单个字段
<TextField type="number"
className="text-field-amount"
onInput={(e)=>{
e.target.value = Math.max(0, parseInt(e.target.value) ).toString().slice(0,2)
}}
min={0}
<TextField
key={key}
label={row.q_desc}
type="number"
onChange={this.onChange}
onInput={this.onInput}
/>
onInput= event => {
event.preventDefault();
debugger;
var textField_name = this.state.input_Name;
if (textField_name == "Zip") {
event.target.value = Math.max(0, parseInt(event.target.value))
.toString()
.slice(0, 4);
}
if (textField_name == "Social Security") {
event.target.value = Math.max(0, parseInt(event.target.value))
.toString()
.slice(0, 9);
}
if (textField_name == "Phone") {
event.target.value = Math.max(0, parseInt(event.target.value))
.toString()
.slice(0, 10);
}
};
onChange(e) {
debugger;
this.setState({
input_Name: e.target.name
});
}