рдПрдХ рд╕рд╛рд▓ рдкрд╣рд▓реЗ рдХреА рдмрд╛рдд рд╣реИ, рдореИрдВ рдПрдХ рд╕рд╛рдЗрдЯ рдкрд░ рдЖрдпрд╛ рдерд╛ред рдкрд╣рд▓реА рдирдЬрд╝рд░ рдореЗрдВ, рдпрд╣ рд╕реИрдХрдбрд╝реЛрдВ рд╕рдорд╛рди рд╕рд╛рдЗрдЯреЛрдВ рд╕реЗ рдЕрд▓рдЧ рдирд╣реАрдВ рдерд╛, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рд╕рд╣рдпреЛрдЧреА рдиреЗ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рддрддреНрд╡реЛрдВ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╕рдордп рдЫреЛрдЯреЗ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдХрдИ рдЕрдкрдбреЗрдЯ рджреЗрдЦреЗред рдПрдХ рдФрд░ рдЦреЛрдЬ рдпрд╣ рдереА рдХрд┐ рдпрд╣ рдУрд╡рд░рд▓реЛрдб рдХреЗ рдмрд┐рдирд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЖрдЬ, рд╣рдо рдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдмрд╣реБрдд рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рд╛рдЗрдЯ 5 рд╡рд░реНрд╖реЛрдВ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣реА рд╣реИред
рд╕рд╛рдЗрдЯ рдХреЗ рджреЛ рджрд┐рди рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рдЗрд╕ рд╕рд╡рд╛рд▓ рдХрд╛ рдЬрд╡рд╛рдм рдорд┐рд▓рд╛ - тАЬрдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ? "ред рдЗрд╕ рд╕рд╛рдЗрдЯ рдХрд╛ рдХреЗрдВрджреНрд░
msajax.js рдирд╛рдордХ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдереА
, рдЬрд┐рд╕рдиреЗ рд╣рдореЗрдВ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдЦреЛрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рдХрд┐рдпрд╛ред рдмрд╣реБрдд рдХрдо рдЬрд╛рдирдХрд╛рд░реА рдереА, рд▓реЗрдХрд┐рди рдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдерд╛ред
рдпрд╣ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЫреЛрдЯреЗ рддрддреНрд╡реЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдХреНрд╖рд╛рдУрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рдирд╕реЗ рдЖрдк рдлрд┐рд░ рдПрдХ рдкреВрд░реНрдг рд╕рд╛рдЗрдЯ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред
рдЗрд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╕
ScriptManager рдХреЛ рдкреЗрдЬ рдкрд░ рдЬреЛрдбрд╝реЗрдВ рдФрд░ рд╣рдорд╛рд░реА рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП
ScriptReference рд▓рд┐рдЦреЗрдВред
рдЪрд▓рд┐рдП рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рддрддреНрд╡ рдмрдирд╛рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред
Type.registerNamespace('MyNamespace');
рд╣рдорд╛рд░реЗ рддрддреНрд╡ рдореЗрдВ рдПрдХ рдирд┐рд░реНрдорд╛рддрд╛ рдФрд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╢рд╛рдорд┐рд▓ рд╣реИред рдирд┐рд░реНрдорд╛рдгрдХрд░реНрддрд╛ рддрдм рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рддрддреНрд╡ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╣рдореЗрд╢рд╛
рддрддреНрд╡ рдХреЛ рдкрд╣рд▓реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗрддрд╛ рд╣реИ, рдпрд╣ DOM рддрддреНрд╡ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЗрд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЕрдЧрд▓рд╛, рдЖрдзрд╛рд░ рд╡рд░реНрдЧ рдХреЗ рдЖрд░рдВрднреАрдХрд░рдг рдХреЛ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣
Sys.UI.Control рд╣реИ , рдЬрд┐рд╕реЗ рд╣рдордиреЗ
рд░рдЬрд┐рд╕реНрдЯрд░рдХреНрд▓рд╛рд╕ рдХрд╣рддреЗ рд╕рдордп рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдерд╛ред рдпрд╣ рд╡рд┐рдзрд┐ рддреАрд╕рд░реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд▓реЗ рд╕рдХрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдЧрд▓реА рдмрд╛рд░ рдЕрдЧрд░ рдХреЛрдИ рдЗрд╕ рдкрдж рдХреЗ рд▓рд┐рдП рдЗрдЪреНрдЫреБрдХ рд╣реИ рддреЛ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдЕрдзрд┐рдХред
рддрд░реАрдХреЛрдВ рдХреЗ рд╕реЗрдЯ рдореЗрдВ рд╣рдореЗрд╢рд╛ рджреЛ рддрд░реАрдХреЗ рд╣реЛрддреЗ рд╣реИрдВ,
рдЖрд░рдВрдн рдФрд░
рдирд┐рдкрдЯрд╛рди, рдирд╛рдо рд╕реЗ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рд╡реЗ рдХреНрдпрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдореИрдВ рдЙрдиреНрд╣реЗрдВ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдореЗрдВ рдмрд┐рдВрджреБ рдирд╣реАрдВ рджреЗрдЦрддрд╛ рд╣реВрдВ, рдореИрдВ рдХрд╣ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдореИрдВ рдЖрдорддреМрд░ рдкрд░ рдИрд╡реЗрдВрдЯ рд╣реИрдВрдбрд▓рд░ рддреИрдпрд╛рд░ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдореБрдЭреЗ рдЬрд┐рди рддрддреНрд╡реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЙрдиреНрд╣реЗрдВ рднрд░рдиреЗ рдореЗрдВ, рдФрд░
рдирд┐рдкрдЯрд╛рди рдореЗрдВ рдореИрдВ DOM рд╕реЗ рдПрдХ рддрддреНрд╡ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рддрд░реНрдХ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛
рд╣реВрдВред рд╡рд┐рднрд┐рдиреНрди рдШрдЯрдирд╛рдУрдВ рд╕реЗ рд╣рдЯрдХрд░ред рд╣рдо рдЕрдкрдиреЗ рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рдХрд╛ рднреА рд╡рд░реНрдгрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдирд┐рд░реНрдорд┐рдд рдЙрджрд╛рд╣рд░рдг рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдкрд▓рдмреНрдз рд╣реЛрдВрдЧреЗред рдЖрдк
$ рдкреНрд░рд╛рдкреНрдд рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ
рддрддреНрд╡ рдХреЛ рдкрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ html рддрддреНрд╡ рдХреА
рдЖрдИрдбреА рд╡рд┐рд╢реЗрд╖рддрд╛ рдХрд╛ рдирд╛рдо рд▓реЗрддрд╛ рд╣реИред
Global.widget = new MyNamespace.Widget($get("ID")); Global.widget.initialize();
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рдкреНрд▓рд╕
Sys.UI.Control рд╡рд░реНрдЧ рдХрд╛
get_element () рддрд░реАрдХрд╛ рд╣реИ, рдпрд╣ рд╣рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рдЗрдХрд╛рдИ рдХреЗ рд░реВрдк рдореЗрдВ рд╣рдорд╛рд░реЗ рддрддреНрд╡ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ:
initialize: function () { var t = this; ... $("label",t.get_element()).html("Hello world!"); }
рд╣рдо рдкреВрд░реЗ
рдбреЛрдо рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд╕рд╛рде, рдЬреЛ рдХреЗрд╡рд▓ рд╕рд╛рдЗрдЯ рдХреА рдЧрддрд┐ рдХреЛ рд╕рдХрд╛рд░рд╛рддреНрдордХ рд░реВрдк рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред
рдЗрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЗрдВ рдПрдХ рдФрд░ рдорд╣рд╛рди
Sys.EventHandlerList рд╡рд░реНрдЧ рд╣реИ рдЬрд┐рд╕реЗ рдХреЙрд▓рдмреИрдХ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рднрдВрдбрд╛рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
BaseControl = function (element) { var t = this; BaseControl.initializeBase(t, [element]); t.handlers = new Sys.EventHandlerList(); }; BaseControl.prototype = { initialize: function () { var t = this; BaseControl.callBaseMethod(t, "initialize"); }, dispose: function () { var t = this; t.handlers = null; BaseControl.callBaseMethod(t, "dispose"); }, addEventHandler: function (name, h) { var t = this; t.handlers.addHandler(name, h); }, removeEventHandler: function (name, h) { var t = this; if (t.handlers) { t.handlers.removeHandler(name, h); } }, raiseEventHandler: function (name, args) { var t = this; var h = t.handlers.getHandler(name); if (h) h(args); } }; BaseControl.registerClass("BaseControl", Sys.UI.Control);
рдЗрд╕ рд╡рд░реНрдЧ рд╕реЗ рдЗрдирд╣реЗрд░рд┐рдЯ рдХрд░рддреЗ рд╣реБрдП, рд╣рдо рдЕрдкрдиреЗ рддрддреНрд╡ рдХреЛ рдЙрд╕рдХреЗ рд░рд╛рдЬреНрдп рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рднреА рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рд╕реВрдЪрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред
AddEventHandler рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕рджрд╕реНрдп, рдЙрдирдХреЗ рдирд╛рдо рдХреЛ рдкрд╛рд░рд┐рдд рдХрд░рддреЗ рд╣реБрдП, рдЙрдирдХреЗ рд▓рд┐рдП рдмреНрдпрд╛рдЬ рдХреА рдШрдЯрдирд╛ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрддреЗ рд╣реИрдВред рдЫреЛрдЯреА-рдореЛрдЯреА рдХрдард┐рдирд╛рдЗрдпрд╛рдБ рд╣реИрдВ, рдЖрдк рдХреЗрд╡рд▓ рд╡рд┐рдзрд┐ рдХреЗ рд╕рдВрджрд░реНрдн рдХреЛ рдкрд╛рд╕ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ, рдЖрдкрдХреЛ
Function.createDelegate рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдкреНрд░рддрд┐рдирд┐рдзрд┐ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рдЗрд╕реЗ рдкрд╛рд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдпрджрд┐ рдпрд╣ рд╣рдорд╛рд░реЗ рд╕рд╛рде рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕ рд╡рд░реНрдЧ рдХреЗ рд╕рднреА рддрддреНрд╡реЛрдВ рдХреЛ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдЧрд╛, рдФрд░ рд╣рдо рдЗрд╕ рддрд░рд╣ рдХреЗ рд▓рдХреНрд╖реНрдп рдХрд╛ рдкреАрдЫрд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдЕрдВрдд рдореЗрдВ, рдЗрди рдкреНрд░рддрд┐рдирд┐рдзрд┐рдпреЛрдВ рдХреЛ рд╣рдЯрд╛рдП рдЬрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдпрд╛ рдЖрдк рдЕрдкрдиреА рд╕рд╛рдЗрдЯ рдкрд░ рддрддреНрд╡реЛрдВ рдХреЗ рдЕрддреБрд▓рдиреАрдп рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рдЕрд╡рд▓реЛрдХрди рдХрд░реЗрдВрдЧреЗред
рдЗрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдореЗрд░реА рдЯреАрдо рдиреЗ рдмрд╣реБрдд рд╕рдореГрджреНрдз рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╡рд╛рд▓реА рд╕рд╛рдЗрдЯ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛, рдФрд░ рд╣рдореЗрдВ рдмрд╣реБрдд рд╣реА рдЕрдЪреНрдЫреЗ рдкрд░рд┐рдгрд╛рдо рдорд┐рд▓реЗред