大家好我有一个html表单,我有一个文本字段,有能力输入两位数,第一个数字自动填充为0,我不希望用户改变可能使用javascript或jQuery或其他任何东西。
答案 0 :(得分:1)
这是另一种方式。 onKeyUp可能不是你想要它的工作方式,但至少你有一些想法
<script>
window.onload=function() {
document.getElementById('part2').focus();
}
</script>
<form onSubmit="this.realvalue.value='0'+document.getElementById('part2').value">
<input type="text" name="realvalue" value="">This can be hidden<br />
<input type="text" style="border-right:0; width:12px" value="0" readonly="readonly" size="1"><input type="text" id="part2" style="border-left:0; width:13px" size="1" maxsize="1"
onKeyUp="this.value=(this.value.length>1)?this.value.substring(-1):this.value">
<input type="submit">
答案 1 :(得分:0)
您可以使用当用户在字段中输入文本时触发的事件“keyup”:
$('#my-input').keyup(function() {
var theInputValue = $(this).val();
// Do whatever you want with the value (like check its length,
// append 0 at the beginning, tell the user not to change first
// character
//
// Set the real value
$(this).val(newValue);
});
答案 2 :(得分:0)
你可能最好在文本框前面加一个'0'作为文本,只能接受一个数字然后以编程方式添加'0'?
答案 3 :(得分:0)
我编写并测试了这段代码,并且完全符合您的预期:
$(function (){
$('#input_id').bind('input',function (){
var val = $(this).val();
var r = val.match(/^[0][0-9]$/g);
if (r !== null){
val = r[0];
if (val.length === 1){
val = '0' + val;
}
}else{
val = '0';
}
$(this).val(val);
});
});
也适用于复制/粘贴=]