Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Live validation for Django forms. It validates as you type. Uses scripts from livevalidation.com

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 example_project
Octocat-spinner-32 livevalidation
Octocat-spinner-32 .gitignore
Octocat-spinner-32 LICENSE
Octocat-spinner-32 README.rst
Octocat-spinner-32 setup.py
README.rst

Django Live Validation

Django Live Validation provides quick and easy client-side form validation which validates as you type. It uses the Live Validation JS library in conjunction with Django Forms. This is by no means a replacement to Django's built in form validation, but it is a suppliment which is purely client-side baed which cuts down on server-side requests for validation. This version of django-livevalidation requires Django >= 1.2, for previous versions please use this project: http://opensource.washingtontimes.com/projects/django-livevalidation/

Install

Place 'livevalidaiton' into your INSTALLED_APPS and make sure it is above the Django admin since it overrides some of the admin templates:

INSTALLED_APPS = (
    'livevalidation',
    ...
    'django.contrib.admin',
)

Usage

To use livevalidation in your templates, make sure you load the headers first before doing anything:

{% include 'livevalidation/header.html' %}

This loads the JS library at js/livevalidation_standalone.compressed.js and the CSS at css/livevalidation.css. Feel free to tweak the CSS to your liking

Now you can use the templatetag to validate a form instance:

{% live_validate form [option=value ...] %}

Where the form is any django.forms.Form (or subclass) instance. The optional option=value kwargs are in pairs as follows:

  • validMessage - message to be used upon successful validation (DEFAULT: "Thankyou!")
  • onValid - javascript function name to execute when field passes validation
  • onInvalid - javascript function name to execute when field fails validation
  • insertAfterWhatNode - id of node to have the message inserted after (DEFAULT: the field that is being validated)
  • onlyOnBlur - whether you want it to validate as you type or only on blur (DEFAULT: False)
  • wait - the time you want it to pause from the last keystroke before it validates (milliseconds) (DEFAULT: 0)
  • onlyOnSubmit - if it is part of a form, whether you want it to validate it only when the form is submitted (DEFAULT: False)
Something went wrong with that request. Please try again.