web-dev-qa-db-ja.com

JQuery UI Datepickerフィールドの手動入力を無効にする方法は?

日付の選択にJQuery UI Datepickerスクリプトを使用することにしました。以下は私のコードの一部であり、PHPページに統合した方法です。

<link type="text/css" href="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>

そして:

    // date picker (embeds JQuery script)
echo '<label for="datepicker">Date: </label>';
echo '<input type="text" name="datepicker" id="datepicker" />';
echo '<div id="datepicker"></div>';

JQuery UIの指示どおりです。

私の質問は次のとおりです:テキスト入力フィールドで手動入力を無効にするにはどうすればよいですか? JQuery Datepickerスクリプトでテキストフィールドに入力できるようにしたいだけです。私が見る限り、スクリプトは現在、ユーザーがテキストフィールドに数字以外の文字を入力することを禁止していますが、数字の組み合わせは許可されています(したがって、「95460829468」のような意味不明な言葉は許可されます)。

101
BeeDog

入力するときに、読み取り専用に設定します。

<input type="text" name="datepicker" id="datepicker" readonly="readonly" />
250
Matthew Jacobs

style = "background:white;"を追加して、書き込み可能に見えるようにする必要があると思います

<input type="text" size="23" name="dateMonthly" id="dateMonthly" readonly="readonly"   style="background:white;"/>
25
Karim Samir