JavaScript
  Home arrow JavaScript arrow Page 3 - Building Dynamic Web Forms with the Ext JS...
Dev Articles Forums 
ADO.NET  
Apache  
ASP  
ASP.NET  
C#  
C++  
ColdFusion  
COM/COM+  
Delphi-Kylix  
Design Usability  
Development Cycles  
DHTML  
Embedded Tools  
Flash  
Graphic Design  
HTML  
IIS  
Interviews  
Java  
JavaScript  
MySQL  
Oracle  
Photoshop  
PHP  
Reviews  
Ruby-on-Rails  
SQL  
SQL Server  
Style Sheets  
VB.Net  
Visual Basic  
Web Authoring  
Web Services  
Web Standards  
XML  
Mobile Linux 
App Generation ROI 
IBM® developerWorks 
Weekly Newsletter
 
Developer Updates  
Free Website Content 
 RSS  Articles
 RSS  Forums
 RSS  All Feeds
Write For Us Get Paid 
Request Media Kit
Contact Us 
Site Map 
Privacy Policy 
Support 
 USERNAME
 
 PASSWORD
 
 
  >>> SIGN UP!  
  Lost Password? 
JAVASCRIPT

Building Dynamic Web Forms with the Ext JS Framework
By: Alejandro Gervasio
  • Search For More Articles!
  • Disclaimer
  • Author Terms
  • Rating: 5 stars5 stars5 stars5 stars5 stars / 5
    2009-01-27

    Table of Contents:
  • Building Dynamic Web Forms with the Ext JS Framework
  • Building a simple contact form
  • Building a dynamic contact web form
  • Listing the dynamic contact form's complete source code

  • Rate this Article: Poor Best 
      ADD THIS ARTICLE TO:
      Del.ici.ous Digg
      Blink Simpy
      Google Spurl
      Y! MyWeb Furl
    Email Me Similar Content When Posted
    Add Developer Shed Article Feed To Your Site
    Email Article To Friend
    Print Version Of Article
    PDF Version Of Article
     
     
    ADVERTISEMENT


    Building Dynamic Web Forms with the Ext JS Framework - Building a dynamic contact web form


    (Page 3 of 4 )

    In the previous section, I coded a basic (X)HTML file which downloads all of the dependencies required by the Ext JS library to build a basic –- yet dynamic – web form.

    However, at this point I haven’t shown you how to create the form. Here is the sequence of steps necessary to accomplish this process successfully and with minor hassles: first, the web form must be constructed after the whole web page has been loaded, and then it must be supplied with the appropriate set of incoming parameters. These parameters will be used to create the corresponding input text boxes, the set of validation rules, and the control buttons that must be provided to users.

    Based on this initial schema, the following JavaScript code performs all of the tasks required to build a contact web form like the one described above. Pay close attention to it, please:


    Ext.onReady(function(){

    Ext.QuickTips.init();

    // turn on validation errors beside the field globally

    Ext.form.Field.prototype.msgTarget = 'side';

    // create simple dynamic form

    var theform = new Ext.FormPanel({

    labelWidth: 75,

    url:'processform.php',

    frame:true,

    title: 'Simple Form built with Ext JS',

    bodyStyle:'padding:5px 5px 0',

    width: 350,

    defaults: {width: 230},

    defaultType: 'textfield',

    // define form fields

    items: [{

    fieldLabel: 'First Name',

    name: 'first',

    allowBlank:false

    },{

    fieldLabel: 'Last Name',

    name: 'last'

    },{

    fieldLabel: 'Company',

    name: 'company'

    }, {

    fieldLabel: 'Email',

    name: 'email',

    vtype:'email'

    }, new Ext.form.TimeField({

    fieldLabel: 'Time',

    name: 'time',

    minValue: '9:00am',

    maxValue: '5:00pm'

    })

    ],

    buttons: [{

    text: 'Save'

    },{

    text: 'Cancel'

    }]

    });

    // display the form

    theform.render(document.body);

    });


    Despite the apparent complexity of the above JavaScript snippet, it’s pretty easy to understand what it does, so let me dissect it for you. First, you can see that all of the code utilized to build the sample contact form has been wrapped into one method included with the Ext JS library, called “onReady().”

    We did this simply to make sure that the web form will be constructed after the complete web page has been properly downloaded and displayed. Are you still with me?

    All right, now it’s time to focus on the part of the code that actually renders the form. In this case, a brand new class is used to achieve this task, which is called, not surprisingly, “FormPanel.” Obviously, this class accepts a certain number of parameters for defining specific aspects of the web form, such as its submission URL and title, its default width, and so forth.

    In addition, the respective input fields of the dynamic contact form are constructed via an array of items that permits you to specify pretty easily their names and labels, and whether or not they will be required.

    And finally, the web form is displayed on the browser by using the “render()” method, as indicated by the following line of JavaScript code:


    theform.render(document.body);


    Well, at this stage you've hopefully learned how to build a simple web form by using the API provided by the Ext JS package. Nonetheless, if you’re anything like me, then you may want to see how this dynamic online form looks. Therefore, I included a screen shot below that shows the visual appearance of the web form in question.

    Here it is:


    Now that you've taken a close look at the above image, you should have a pretty good idea of how useful the Ext JS package can be when you're building professional-looking web forms.

    Nevertheless, I have to admit that the JavaScript code that you learned before  looks disarticulated when analyzed in isolated sections, since it must be integrated with the corresponding structural markup.

    Thus, with that idea in mind, in the last section of this initial tutorial of the series, I’m going to list the complete source code required to build a simple contact web form. This way you'll have it available all in one place, in case you want to copy it and paste it into your code editor.

    To see the full source code that renders the previous dynamic web form, please click on the link below and keep reading.

    More JavaScript Articles
    More By Alejandro Gervasio


       · Ext JS is a popular JavaScript framework that permits to build interactive interface...
     

    JAVASCRIPT ARTICLES

    - Comparing Fields and Customizing Error Messa...
    - Checking Numbers and File Extensions with jQ...
    - Validating Digits and Dates with jQuery`s Va...
    - Validating Ranges, Emails, and URLs with jQu...
    - More Uses for the jQuery Tooltip Plug-in`s b...
    - Building Image-Based Tooltips with the jQuer...
    - Using the jQuery Tooltip Plug-in`s bodyHandl...
    - Using Rangelength, Min and Max with the Vali...
    - Using Minlength and Maxlength with the Valid...
    - Modifying Tooltip Coordinates with the jQuer...
    - Applying a Fade Out Effect with the jQuery T...
    - Tracking Mouse Movements with the jQuery Too...
    - Checking Online Forms with the Validator jQu...
    - Nested JavaScript Functions as Objects
    - The jQuery Tooltip Plug-in







    © 2003-2009 by Developer Shed. All rights reserved. DS Cluster 3 Hosted by Hostway
    For more Enterprise Application Development news, visit eWeek