Skip to content
👻 Custom widget that limits the number of characters that can be entered in a textarea field
Branch: develop
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
charsleft_widget
example
.gitignore
.landscape.yaml Create .landscape.yaml Sep 24, 2015
.travis.yml fixed broken .travis.yml Mar 26, 2019
LICENSE
MANIFEST.in
README.rst
setup.cfg improved test suite Oct 1, 2015
setup.py updated test suite Oct 15, 2016
test_settings.py

README.rst

django-charsleft-widget

django-charsleft-widget is a custom widget that adds a input clearing button on any input fields that are using it. It clears the value, and returns focus to that field.

Authored by Basil Shubin

Installation

pip install django-charsleft-widget

External dependencies

  • jQuery - this is not included in the package since it is expected that in most scenarios this would already be available.

Setup

Add charsleft_widget to INSTALLED_APPS:

INSTALLED_APPS += (
    'charsleft_widget',
)

and just include charsleft_widget templates

{% include "charsleft_widget/charsleft_widget_css.html" %} {# Before the closing head tag #}
{% include "charsleft_widget/charsleft_widget_js.html" %} {# Before the closing body tag #}

When deploying on production server, don't forget to run:

python manage.py collectstatic

Usage

All you need now is to import ClearableInput class and override field's widget, for example:

from django.forms.fields import CharField

from charsleft_widget import CharsLeftArea

class Form(forms.Form):

    field = CharField(max_length=128, widget=CharsLeftArea)

Please see example application. This application is used to manually test the functionalities of this package. This also serves as a good example.

You need only Django 1.4 or above to run that. It might run on older versions but that is not tested.

License

django-charsleft-widget is released under the BSD license.

You can’t perform that action at this time.