Client Side Actions
The term "client-side" refers to Internet actions that take place on your own computer, as opposed to the site's remote server.
Client-side vs. Server-side
These terms are easily understood through a simple example. In some Internet forms, key fields are marked as required, and you're prevented from moving on until you've filled them in. Checking that you have entered data in all these fields can be done either <server-side> or client-side.
In server-side validation, when you hit "submit", the form is sent to the remote server; the remote server goes over the fields and checks them for errors; then it sends back a form page where the fields you've skipped are marked in red, or if all went well, the new page that follows the form.
With client-side validation, checking the fields happens before the form is sent to the remote server. It can happen after any kind of event, like moving away from a required field or hitting the "submit" button. If errors are discovered, you'll be either notified through a dialogue box, or error markings will appear on the page. Either way, no information will be exchanged with the remote server until all required fields are complete.
Scripts and plugins
Actions like the validation example above are achieved by including the validation script within the page the first time it's sent along. The script, usually written in <JavaScript>, is marked with tags that identify it as such, and will be activated on certain pre-defined events. Though it's part of the web page, it's invisible to you unless you view the <HTML> source "behind" the page.
Another common client-side example is a plug-in. Plug-ins are small, portable programs which you're sometimes prompted to download in order for certain Internet components to work. When you watch a Flash movie, for example, the video processing is done on your computer by your Flash plug-in.
The ups and downs of client-side scripts
Some actions can only be done client-side: sites that offer you a free demo scan of your computer for viruses actually pass you an antivirus plug-in which must run on your computer. In other cases, as with the form example above, processing can be done either client- or server-side.
Transferring information to and from the remote server contributes toward consuming its resources. So does executing scripts on the remote server, or running the applications that usually run as plug-ins. For one user, the server will likely not be burdened. For many users, performance will drop sharply, and the human experience will suffer in terms of waiting time, smooth video relays, etc.. Client-side scripts and plug-ins help greatly with both these issues.
On the other hand, for reasons of security, client-side scripts have limited purview. Some users disable these components altogether, which might exclude them from using certain sites or features. Also, including the client-side script in the web page is adding to the size of the page sent by the server. In the case of heavy scripts that take up plenty of space, this will burden the server as well as slow down your browsing experience—the exact opposite of the client-side purpose.
