Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 3, 2015 22:50:35

megoloman
Зарегистрирован: 2015-10-26
Сообщения: 113
Репутация: +  0  -
Профиль   Отправить e-mail  

Не отображается custom widget

Здравствуйте! Помогите пожалуста с отображением собственного виджета. Хочу к полю с выбором даты добавить календарь, но он не появляется при выборе этого поля.

forms.py:

from django.forms import ModelForm
    from models import Info
    from django import forms
    
    class CalendarWidget(forms.TextInput):
        class Media:
            css = {
                   'all': ('static/css/jquery-ui-1.8.10.custom.css',),
            }
                   
            js = ("http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js", 
                  "http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js",
                  )
        
    class EditMyInfoForm(ModelForm):
        class Meta:
            model = Info
            fields = ['name', 'surname', 'date_of_birth', 'bio', 'contacts']
            widgets = {'date_of_birth':CalendarWidget(),}

Затем добавляю `
{{form.media}}
` к странице формы:

{% extends "base.html" %}
    {% load staticfiles %}
    
    {% block content %}
    <h3><a href ="/">Main page</a></h3>
    <script type="text/javascript">
    jQuery(function() {
        var form = jQuery("#myForm");      
        form.submit(function(e) {                  
            jQuery("#sendbutton").attr('disabled', true)
            jQuery("#sendwrapper").prepend('Loading...<img src="{% static 'static/images/ajax-loader.gif' %}" />')                
            jQuery("#ajaxwrapper").load(
                form.attr('action') + ' #ajaxwrapper',
                form.serializeArray(),
                function(responseText, responseStatus) {
                    jQuery("#sendbutton").attr('disabled', false)
                    jQuery("#sendwrapper").hide();
                }            
            );
            e.preventDefault();                          
        });
    });  
    </script>
    
    {{form.media}}
    
            <form id="myForm" action="" method="post">
                <div id="ajaxwrapper">
                {% csrf_token %}
                {{ form.non_field_errors }}
                {{ form.as_p }}
                </div> 
                <p id="sendwrapper"><input type="submit" value="save" id="sendbutton"/></p> 
            </form>
                           
    {% endblock %}


Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version