我在这个问题上需要一些帮助。我只想在" Date1"中工作的退格键和箭头键。领域。我看到它一旦成为" datepicker"带有下面代码的字段,数字符号和" /"被允许。我可以禁用它,以便只有退格键和箭头键可以工作吗?不要让人们输入随机数字。
<script>
var dateToday = new Date();
$(function() {
$( "#Date1" ).datepicker({
numberOfMonths: 1,
showButtonPanel: true,
minDate: dateToday
});
});
</script>
<script>
var o = document.getElementById('Date1');
o.addEventListener( 'keydown', function( e ) {
if( e.keyCode >= 37 && e.keyCode <= 40 ) {
return;
}
if( e.keyCode === 8 || e.keyCode === 58 ) {
return;
}
e.preventDefault( );
}, false );
</script>
&#13;
<input type="text" id="Date1" name="Date1">
&#13;
现在,它按预期工作了。我无法使用键盘上的所有字母键
答案 0 :(得分:0)
为什么不标记输入readonly="true"
以禁用输入。
<input type="text" id="Date1" name="Date2" readonly="true">
这将达到目的。
正如您所说,应该允许清除输入字段。请将您的听众更新为
o.addEventListener('keydown', function( e ) {
switch(e.keyCode){
case (e.keyCode >= 37 && e.keyCode <= 40 ):
case ( e.keyCode === 8 || e.keyCode === 58 ):
case (e.keyCode >= 48 && e.keyCode <= 57);
return;
default:
console.log(e.keyCode); // do something for default
}
e.preventDefault( );
},false);