Decidí usar el script JQuery UI Datepicker para seleccionar fechas. A continuación se muestra parte de mi código y la forma en que lo integré en mi página PHP:
<link type="text/css" href="https://stackoverflow.com/questions/4164542/css/south-street/jquery-ui-1.8.6.custom.css" rel="stylesheet" />
<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="js/jquery-ui-1.8.6.custom.min.js"></script>
<script type="text/javascript">
$(function(){
// Datepicker
$('#datepicker').datepicker({ dateFormat: 'yy-mm-dd' });
//hover states on the static widgets
$('#dialog_link, ul#icons li').hover(
function() { $(this).addClass('ui-state-hover'); },
function() { $(this).removeClass('ui-state-hover'); }
);
});
</script>
Y:
// date picker (embeds JQuery script)
echo '<label for="datepicker">Date: </label>';
echo '<input type="text" name="datepicker" id="datepicker" />';
echo '<div id="datepicker"></div>';
Más o menos de acuerdo con las instrucciones de la interfaz de usuario de JQuery.
Ahora mi pregunta es: ¿Cómo puedo deshabilitar las entradas manuales en el campo de entrada de texto?? Solo quiero que el script JQuery Datepicker pueda llenar el campo de texto. Por lo que puedo ver, la secuencia de comandos actualmente evita que el usuario ingrese caracteres no numéricos en el campo de texto, pero se permite cualquier combinación de números (por lo tanto, se permiten galimatías como “95460829468”).