C# Corner
Tech
News
Videos
Forums
Jobs
Books
Events
More
Interviews
Live
Learn
Training
Career
Members
Blogs
Challenges
Certification
Contribute
Article
Blog
Video
Ebook
Interview Question
Collapse
Feed
Dashboard
Wallet
Learn
Achievements
Network
Refer
Rewards
SharpGPT
Premium
Contribute
Article
Blog
Video
Ebook
Interview Question
Register
Login
IMPLEMENT A REAL AJAX CUSTOM CLASS. STORE THE OBECT VALUES AND RETAIN IT
WhatsApp
Jaish Mathews
15y
8.9
k
0
0
25
Blog
I have an AJAX custom library. A AJAX custom library is a normal javascript contains general AJAX custom classes and NameSpaces which other javascripts can use. Simly the purpose of library here is same like server side. Reusability. My AJAX custom library name is "SampleAjaxLibrary.js", like below.
/// <reference name="MicrosoftAjax.js"/>
function CreateEmloyees() {
//Registering a new custom namespace
Type.registerNamespace("SampleAjaxLibrary");
//Defining a type named "Emloyees" under "SampleAjaxLibrary" NameSace. Look at that the type
//constructor also as it's defined with a single argument "id".
//You can see on calling the constructor one local variable _id will be set.
SampleAjaxLibrary.Emloyees = function(id) {
this._id = id;
}
//Below defining the body of the above type using a key word "prototype".
//Any thing like this defined for a type means, those are exosed to the outside world.
SampleAjaxLibrary.Emloyees.prototype =
{
//A function defining to get the "ID" value
getID: function() {
return this._id;
}, ////A function defining to get the "Name" value
getName: function() {
return this._name;
}, //A function defining to set the "Name" value
setName: function(val) {
this._name = val;
}, //A function defining to get the "Age" value
getAge: function() {
return this._age;
}, //A function defining to set the "Age" value
setAge: function(val) {
this._age = val;
}
};
//Registering the above referred type,"Emloyees", as a "Class" type under "SampleAjaxLibrary"
//NameSpace
SampleAjaxLibrary.Emloyees.registerClass("SampleAjaxLibrary.Emloyees", Sys.UI.Behavior);
//This script library saying that "I am loaded"!!!.
Sys.Application.notifyScriptLoaded();
}
In every line I put comments in detail. But one general information I need to share with you guys. i.e. 1st line, "/// <reference
name
="MicrosoftAjax.js"/>".
This one giving a Ref. to builtin "MicrosoftAjax.js". Once you added that line, you will intellisense in VS2008. But if you need intellesense for another JS file which is physically residing in your project, you can use like "/// <reference
path
="MicrosoftAjax.js"/>". The bolded lines only differs for builtin and custom. So for getting intellisense we added that 1st line.
Now I have a custom JS name "MyScrit.js" like below. This JS using above mentioned AJAX library.
function CallSampleAjaxLibrary() {
//Creating an object of my newly created AJAX class by passing the constructor argument
//which will set to the ID of the employee. Please look at the class definition inside
//SampleAjaxLibrary.js
var obj = new SampleAjaxLibrary.Emloyees("1");
//Setting the "Name" and "Age" for the "Employee" object using it's
//Custom methods.
obj.setName("Jaish");
obj.setAge("36");
//After set all values, now getting the setted values for "Employee" class and displaying.
var info = "ID: " + obj.getID() + "\n" + "Name: " + obj.getName() + "\n" + "Age: " + obj.getAge();
alert(info);
}
Below is my aspx. I am creating AJAX library inside "pageLoad()" to make sure that all basix AJAX libraries are got loaded for smooth creation of ourlibrary. Other wise you will get errors like "Type" could not identified etc..
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
">
<html xmlns="
http://www.w3.org/1999/xhtml
">
<head runat="server">
<script src="MyScrit.js" type="text/javascript" language="javascript"></script>
<script src="SampleAjaxLibrary.js" type="text/javascript" language="javascript"></script>
<script language="javascript" type="text/javascript">
function pageLoad() {
//Calling the typelibrary file for creating the "Emloyees" class
//I am creating "Emloyees" class in side a "pageLoad()". So safe from errors like,
//"Type" is undefined, that's happening once your script loaded 1st and executing
//before the basic AJAX script loaded. Here we can ensure all basic scripts are loaded.
CreateEmloyees()
//Using the custom AJAX library after it's creation
CallSampleAjaxLibrary();
}
</script>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
</form>
</body>
</html>
Up Next
Ajax: FilteredTextBoxExtender
Ebook Download
View all
Printing in C# Made Easy
Read by 22.5k people
Download Now!
Learn
View all
Membership not found