Web Development · WDC-01-10

jQuery for Application

jQuery for Application is an applied course in jQuery 4, covering utility functions, Deferred and Ajax, writing your own plugins, performance tuning, forms with validation and file uploads, and connecting to REST APIs. It suits people who have used jQuery for a while, developers who maintain organisational systems and students building projects with jQuery.

Updated
From 4,410 THB / person 4,900 −10% excl. VAT 7% · group rates available
PDFDownload the course outline
  • Duration18 hours · 3 days
  • FormatOnsite / live online
  • Next roundOn request
  • CertificateIncluded

Course overview

jQuery is still part of many websites, back-office systems and plugins in organisations, and jQuery 4, released in 2026, removed a number of old APIs and dropped support for old browsers. Work that once relied on older plugins, such as jQuery Templates or Flash-based file uploads, should no longer use them. Developers who maintain these systems need to apply jQuery properly, combine it with modern JavaScript, and make existing code safer and faster.

This new edition is for people who already use jQuery. It starts with utility functions, Deferred and Ajax on jQuery 4, customising jQuery and writing your own plugins, then moves on to performance tuning, building HTML from data, form validation, file uploads and dynamic add-row forms, before using jQuery UI and REST APIs in application pages. It finishes with a workshop that builds an internal data management system. (3 days, 6 hours per day, 18 hours in total, Intermediate level.)

What you’ll gain

  • Use jQuery 4 utility functions, Deferred and Ajax alongside modern JavaScript
  • Customise jQuery with custom selectors and custom speeds, and write your own plugins
  • Measure and improve the performance of jQuery code with Chrome DevTools
  • Build forms that validate data, upload files and add rows dynamically
  • Use jQuery UI and connect to REST APIs in organisational application pages
  • Keep existing jQuery code secure and upgrade it to jQuery 4

Who this course is for

  • People who have used jQuery for a while and want to apply it to real work
  • Developers who maintain organisational websites or back-office systems that use jQuery
  • Students building computer projects with jQuery
  • People who have completed a basic jQuery or JavaScript course

Prerequisites

  • Able to build websites with HTML, CSS and JavaScript
  • Some experience with jQuery, such as selectors, events and basic Ajax
  • Confident use of a computer, a web browser and installing software

Curriculum

Course Details

This course is the 2026 edition of jQuery for Application, rewritten to use jQuery 4 alongside modern JavaScript and to replace discontinued plugins with current approaches. It builds on Basic JavaScript ES6+ and jQuery. It runs for 3 days, 6 hours per day (18 hours in total, 09:00-16:00), as lectures alternating with labs and workshops throughout. Intermediate level. Learners use utility functions, Deferred and Ajax, write their own plugins, tune performance, build forms that validate data, upload files and add rows dynamically, use jQuery UI and REST APIs, and bring it all together in a workshop that builds an internal data management system. They take home the source code for every lab.

Day 1 Applied jQuery 4 and Writing Plugins

Section 1: Lab: jQuery 4 in Real Projects

  • jQuery in today's systems, and what changed in jQuery 4
  • Use jQuery from a CDN or npm and import it in ES modules
  • Audit existing code with jQuery Migrate and read its console warnings
  • Prepare the sample project and a local API with Node.js
  • Lab: open an existing system page and find what must change before upgrading

Section 2: Lab: Utility Functions in jQuery 4

  • $.each, $.map, $.grep, $.merge and deep copies with $.extend
  • Check data types with Array.isArray and typeof instead of removed functions
  • Replace $.parseJSON, $.trim and $.proxy with JSON.parse, trim and bind
  • $.getScript, and $.when($.ready, ...) instead of $.holdReady
  • Lab: a set of functions that transform product data from JSON

Section 3: Lab: Deferred, Promises and Ajax

  • $.Deferred, $.when and waiting for several tasks at once
  • $.ajax, $.getJSON and $.post with JSON data
  • Use jqXHR with async/await and try/catch
  • $.ajaxSetup, Ajax events and showing loading states
  • Lab: a report page that loads data from three sources at once

Section 4: Lab: Customising jQuery

  • Define custom speeds in $.fx.speeds
  • Create custom selectors with jQuery.expr.pseudos
  • Add your team's own utility functions with $.extend
  • Extend or wrap built-in functions safely instead of overwriting them
  • Lab: a selector that filters unsaved rows in a table

Section 5: Lab: Writing Your Own jQuery Plugin

  • Plugin structure with $.fn.extend, returning this for chaining
  • Default options, reading data-* attributes and event namespaces
  • Store state with .data() and provide a destroy method
  • Package the plugin as a module file and document how to use it
  • Lab: a plugin that counts characters and warns in text fields
Day 2 Performance, Data and Advanced Forms

Section 6: Lab: Performance of jQuery Code

  • Find slow spots with the Performance panel and console in Chrome DevTools
  • Fast selectors, and caching selections in variables
  • Reduce DOM changes by building HTML first and inserting it once
  • Event delegation, debounce and throttle
  • Lab: make a 5,000-row table filter and sort smoothly

Section 7: Lab: Building HTML from Data instead of jQuery Templates

  • Why jQuery Templates was abandoned, and today's alternatives
  • Template literals and functions that render lists from data
  • The HTML template element and cloning it
  • Prevent XSS with .text() and escaping data
  • Lab: nested product category cards from JSON data

Section 8: Lab: Validating Forms

  • Built-in HTML validation such as required, pattern and type="email"
  • jQuery Validation Plugin: rules, messages and where errors appear
  • Write your own rules, such as ID numbers or digits only
  • Check for duplicates on the server with Ajax, and always validate again on the server
  • Lab: a sign-up form that validates every field

Section 9: Lab: Uploading Files with Ajax

  • FormData and sending files with $.ajax
  • Single and multiple file uploads with a progress bar
  • Drag-and-drop files and preview images before sending
  • Check file type and size in the browser and on the server
  • Lab: a multi-file attachment page with a status for each file

Section 10: Lab: Dynamic Add-Row Forms

  • Add and remove rows from a template and renumber field names
  • Recalculate totals as soon as a row changes
  • Validate every row before saving
  • Send multiple rows as JSON and receive them on the server
  • Lab: a quotation form that takes any number of product lines
Day 3 Application UI, APIs and Workshop

Section 11: Lab: Image Sliders and Lightboxes

  • Image sliders with CSS scroll snap and jQuery controls
  • A lightbox with the dialog element and keyboard support
  • Lazy-loaded images and sizes that suit each screen
  • How to choose third-party plugins that are still maintained
  • Lab: a product gallery with enlarged images

Section 12: Lab: jQuery UI 1.14 in Application Pages

  • Autocomplete that loads data from an API
  • Sortable for reordering lists and saving the order
  • Dialogs for confirmations and edit forms
  • Datepicker and customising the theme to match the system
  • Lab: a task ordering page with drag and drop that saves

Section 13: Lab: Connecting to REST APIs and Web Services

  • CRUD over a REST API with GET, POST, PUT and DELETE
  • Send headers and tokens with requests
  • Paging, searching and filtering data from an API
  • Handle errors, timeouts and basic CORS issues
  • Lab: a customer list page that can add, edit and delete

Section 14: Security and Maintaining Existing jQuery Code

  • XSS from .html() and inserting user input
  • Load jQuery from a CDN with Subresource Integrity
  • Check the versions and vulnerabilities of plugins in use
  • Upgrade to jQuery 4 step by step with jQuery Migrate
  • How to gradually replace parts with standard JavaScript

Section 15: Workshop: An Internal Data Management System

  • Design the list, search and data entry pages
  • Use your own plugin, add-row forms and validation
  • Attach files and show upload status
  • Connect to the REST API and check performance before handing in
  • Present your work and how to apply it in your organisation

Schedule & training options

For individuals — public rounds

No public rounds are open right now. Join the waiting list and we will contact you first when the next round opens, or ask us on LINE. Or call 02-570-8449 or 088-807-9770

For organisations — in-house / private

  • Tailor the content to your team’s tools and projects
  • Your dates, at your office or live online
  • Quotation with tax ID for procurement
Corporate training quote

Instructors

Frequently asked questions

What is a jQuery plug-in, and how do I install and use one?

A jQuery plug-in is extra code that adds new methods to jQuery, for example form validation, date pickers or sortable lists. Load jQuery first, then the plug-in's JavaScript and CSS from a CDN or install it with npm. Select elements with a selector and call the method with an options object, for example $('#form').validate({...}). Before choosing one, check that it is still maintained and works with jQuery 4. You can also write your own plug-ins with $.fn.extend.

How can I make jQuery code run faster?

Measure first with the Performance panel in Chrome DevTools to find what is really slow. Then use specific selectors and cache selections in variables instead of selecting again, build HTML first and insert it in one go, use event delegation with .on() on a parent element instead of binding events to every row, and debounce search boxes that run on every keystroke. Some parts can be rewritten in standard JavaScript when that clearly makes them faster.

How do I validate form data with jQuery before submitting?

Use built-in HTML validation such as required, pattern and type="email" as the first layer, then use the jQuery Validation Plugin for more complex rules. Call .validate() on the form, set rules for each field such as required, email, minlength or digits, and set messages for the warnings. You can write your own rules and check for duplicates on the server through Ajax. The server must still validate the data every time, because browser checks can be bypassed.

Who is the jQuery for Application course for, and what should I know beforehand?

It suits people who have used jQuery for a while and want to apply it to real work, developers who maintain organisational websites or back-office systems, and students building projects with jQuery. You should be able to build websites with HTML, CSS and JavaScript and have some jQuery experience, such as selectors, events and basic Ajax. If you have not used jQuery before, start with a basic course first.

What will I be able to do after the jQuery for Application course?

You will be able to use jQuery 4 utility functions, Deferred and Ajax with async/await, create custom selectors and write your own plugins, speed up code with DevTools, build HTML from data safely, build forms that validate data, upload multiple files and add rows dynamically, use jQuery UI and REST APIs, and upgrade existing code to jQuery 4. Participants who complete the training receive a Certificate of Completion with its own number, which can be verified online.

Can the jQuery for Application course be run in-house for our team?

Yes. This course can be run in-house for your team, with examples adapted to your work, such as practising on the forms or data management pages your team uses, or upgrading existing system pages to jQuery 4. You can request a training proposal from this page or contact us on LINE @itgenius or by phone on 02-570-8449.

Related articles

Articles are published in Thai.