Transcript
Page 1: Form design - challenges and solutions

Form Design – Challenges & Solutions

ProjectEric.com

Copyright 2009. ProjectEric / Eric E. Ellis. All rights strictly reserved.

Page 2: Form design - challenges and solutions

Contents‘Forms suck’ Luke W. – Web Form Design: Filling in the Blanks

Flow, Noise, Expectation, OrderCreate a conversationEngage progressively

Page 3: Form design - challenges and solutions

Expectation

[Managed] Noise

Order

Flow

Page 4: Form design - challenges and solutions

ChallengeWhat should I consider when developing form content?

Conversation, voice. People before pixelsContext

http://patterntap.com/usersets/set/136http://www.huffduffer.com/signup/

Page 5: Form design - challenges and solutions

ChallengeHow do I show users exactly what they need, when they need it?

Form guidanceShow/hide (progressive engagement)Modal layersModeless layers

Page 6: Form design - challenges and solutions

SolutionShow/Hide (progressive engagement)

Page 7: Form design - challenges and solutions

SolutionShow/Hide (progressive engagement) – cont’d.

Page 8: Form design - challenges and solutions

SolutionModeless layers

http://plugins.jquery.com/project/dyndatetimehttp://www.mechanicalmarksy.com/hosted/toolman/dyndatetime/example.html

Page 9: Form design - challenges and solutions

SolutionModal layers

Page 10: Form design - challenges and solutions

SolutionModal layers (cont’d).

http://plugins.jquery.com/project/modaldialoghttp://tautologistics.com/projects/jquery.modaldialog/doc/1.0.0/

Page 11: Form design - challenges and solutions

ChallengeHow do I design forms to better manage ‘choice’?

Ask:What works for most

people?Will the default selection be

clear(er)?Can the choices be

personally relevant?

Page 12: Form design - challenges and solutions

ChallengeHow can I create user-focused form layout?

FlowNoiseExpectationOrder

Page 13: Form design - challenges and solutions

ChallengeHow do I design user-focused validation?

Plan for errors, but don’t forget successes

Inline validationInline

suggestion

Page 14: Form design - challenges and solutions

Try thisPassword strength meter by Daren Mason

Easy to change the validation that the users would see(function($){ $.fn.shortPass = 'Too short';$.fn.badPass = 'Weak';$.fn.goodPass = 'Good';$.fn.strongPass = 'Strong';$.fn.samePassword = 'Username and Password identical.’;$.fn.resultStyle = "";

The math is configurable//password has 3 numbers if (password.match(/(.*[0-9].*[0-9].*[0-9])/)){ score += 5;}

http://plugins.jquery.com/project/pass_strengthhttp://mypocket-technologies.com/jquery/password_strength/ http://edevil.wordpress.com/2005/11/14/javascript-libraries-roundup/ (good comprehensive list of JS libraries)

Page 15: Form design - challenges and solutions

And this tooClient-side validation

<form method="get" class="cmxform" id="form1" action="">

<!-- The form section title --><fieldset><legend>Login Form</legend>

<!-- The username --><p><label>Username</label><input name="user" title="Please enter your username (at least 3 characters)" class="{required:true,minlength:3}" /></p>

<!-- The password --><p><label>Password</label><input type="password" maxlength="12" name="password" title="Please enter your password, between 5 and 12 characters" class="{required:true,minlength:5}" /></p>

<!-- The inline error messaging --><div class="error"></div>

<p><input class="submit" type="submit" value="Login"/></p>

</fieldset></form>

http://plugins.jquery.com/project/validate http://bassistance.de/jquery-plugins/jquery-plugin-validation/

Page 16: Form design - challenges and solutions

QuestionMust I trove through plug-ins to find all my validation solutions?

You don’t have to:qForms JavaScript API

http://www.devx.com/webdev/Article/31695http://www.pengoworks.com/index.cfm?

action=qForms JSValidate (beta)

Strong browser testinghttp://www.jsvalidate.com/demo/

Page 17: Form design - challenges and solutions

QuestionWhy not use client-side validation only?

Security, that’s why notADA ‘back-up’

Page 18: Form design - challenges and solutions

SolutionCombine server-side checks with client-side best practices

Page 19: Form design - challenges and solutions

ChallengeHow do I make JS-based layers, like for bubble help, accessible?

This is especially tricky when using JS-based inline validationARIA standards through the W3C‘WAI-ARIA, the Accessible Rich Internet

Applications Suite, defines a way to make Web content and Web applications more accessible to people with disabilities.’

http://sourceforge.net/projects/fangs/

Page 20: Form design - challenges and solutions

QuestionWhat are common elements in form-building that deserve more attention?

<fieldset>, <legend>, <label>

<fieldset><legend>The name section</legend>

<label for=“firstname”>First name</label><input id=“firstname” type=“text” />

<label for=“lastname”>Last name</label><input id=“lastname” type=“text” />

</fieldset>


Top Related