13

私の Django 1.3 モデルの一部には、DateField プロパティがあります。フォームが生成されるときに、プレーン テキスト フィールドの代わりに jQuery UI Datepicker を使用したいと考えています。新しいウィジェットを作成できることは理解していますが、その方法がわかりません。さらに、このようなことが Django ですでに行われているかどうかはわかりません (Google で調べましたが、あり得ません)。

jQuery UI Datepicker の複数のモデル (およびページ) で再利用できる Django ウィジェットを作成する方法は?

4

2 に答える 2

11

JQueryUIには非常に優れた日付UIピッカーがあります。ここで入手できます:http://jqueryui.com

たとえば、次のフォームがあるとします。

class DateForm(forms.Form):
   myDate = forms.DateField()

ここから、テンプレート内からJQuery日付ウィジェットをフィールドにバインドします。

DateFormここでは、をテンプレートに渡し、JQueryへのパスが正しいと想定しています。

<head>
    <link rel="stylesheet" href="/themes/base/jquery.ui.all.css">
    <script src="/jquery.js"></script>
    <script src="/ui/jquery.ui.core.js"></script>
    <script src="/ui/jquery.ui.widget.js"></script>
    <script src="/ui/jquery.ui.datepicker.js"></script>
    <script>
    $(function() {
        $( "#id_myDate" ).datepicker();
    });
    </script>
</head>
<body>

<p>Date: <input type="text" id="id_myDate"></p>

</body>

myDateその前に。が付いていることに注意してくださいid_。Djangoはこれを透過的に行うので、次のように一致するようにしてくださいid_myDate

これがお役に立てば幸いです。

于 2012-03-07T09:02:22.077 に答える
0

DateInputを確認する必要があります - そこからウィジェットを継承する必要があります。管理ウィジェットも見てください- いくつかの JS が追加されています。DateInput に JS を追加すれば完了です。

于 2012-03-07T01:49:17.487 に答える