利用MS AJAX注册Javascript命名空间并创建类

 更新时间:2007年10月27日 12:06:03   作者:  
一、为页面添加一个ScriptManager控件。

二、注册命名空间:

Type.registerNamespace("Demo");


三、为类添加构造函数、属性、方法。

Demo.sample=function(){}

四、注册类。

Demo.Person.registerClass('Demo.sample ', null, Sys.IDisposable);


下面是一个具体的实例:

Namespace.js

Type.registerNamespace("Demo");


Demo.Person = function(firstName, lastName, emailAddress) {

this._firstName = firstName;

this._lastName = lastName;

this._emailAddress = emailAddress;

}


Demo.Person.prototype = {


getFirstName: function() {

return this._firstName;

},


getLastName: function() {

return this._lastName;

},


getName: function() {

return this._firstName + ' ' + this._lastName;

},


dispose: function() {

alert('bye ' + this.getName());

}

}

Demo.Person.registerClass('Demo.Person', null, Sys.IDisposable);



Namespace.aspx代码:

<!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>

<title>Namespace</title>

</head>


<body>

<form id="Main" runat="server">

<asp:ScriptManager runat="server" ID="scriptManager" />

</form>


<div>

<p>This example creates an instance of the Person class 

and puts it in the "Demo" namespace.</p>


<input id="Button1" value="Create Demo.Person" 

type="button" onclick="return OnButton1Click()" />


</div>


<script type="text/javascript" src="Namespace.js"></script>

<script type="text/javascript" language="JavaScript">


function OnButton1Click() 

{

var testPerson = new Demo.Person( 

'John', 'Smith', 'john.smith@example.com');

alert(testPerson.getFirstName() + " " + 

testPerson.getLastName() );


return false;

}



</script>


</body>

</html>


保存后看下运行效果。

相关文章

最新评论