我使用带有文本字段的日历,我只希望日历选择值插入文本值,其他键盘手动值不插入文本框。
<input type="text" name="date_to" value="<?php echo $date_to; ?>" placeholder="To" id="to" class="Original-datepicker" required />
这是我的代码。当我单击此文本框时,日历打开,所选值插入文本值。我想在这里只有日历选择值在这里用作文本值。此处未插入手动值。
我需要限制用户手动输入日期…
我使用这个jquery代码的日历或时间选择器
$(document).ready(function () {
$( "#to" ).datepicker({
defaultDate: "+1w",
changeMonth: true,
numberOfMonths: 1,
onClose: function( selectedDate ) {
$( "#from" ).datepicker( "option", "minDate", selectedDate );
}
});
$( "#from" ).datepicker({
defaultDate: "+1w",
changeMonth: true,
numberOfMonths: 1,
onClose: function( selectedDate ) {
$( "#to" ).datepicker( "option", "maxDate", selectedDate );
}
});
});
$(document).ready(function () {
$('#onselectExample').timepicker({ 'timeFormat': 'h:i A','minTime': '9:00am', 'maxTime': '9:00pm', });
$('#onselectTarget').timepicker({ 'timeFormat': 'h:i A','minTime': '9:00am', 'maxTime': '9:00pm', });
});
i use readonly='true' like:——
" placeholder="To" id="to" class="Original-datepicker" required readonly='true' />
这有助于我在日历的情况下
但在时间选择器的情况下,我面临同样的问题。
timepicker作为下拉菜单打开,我选择了一个时间选项。当我使用只读时,下拉菜单是不打开的。
您可以简单地添加readonly
属性
<input readonly="readonly" type="text" name="date_to" value="<?php echo $date_to; ?>" placeholder="To" id="to" class="Original-datepicker" required />
和时间选择器,您可以简单地防止按键事件,参见演示
$('#onselectExample,#onselectTarget').keypress(function(event){
event.preventDefault();});
});
在使用日期选择器时禁用键盘输入,您可以这样做:
<html>
<head>
<meta charset="utf-8">
<title>jQuery UI Datepicker - No keyboard input</title>
<script src="http://code.jquery.com/jquery-1.10.2.js"></script>
<script src="http://code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<script type="text/javascript">
$(function () {
$("#datepicker").datepicker({ maxDate: "-1D" }).attr('readonly', 'readonly');
$("#datepicker").readonlyDatepicker(true);
});
</script>
</head>
<body>
<p>Date: <input type="text" id="datepicker"></p>
</body>
</html>