Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- FILE 1 : ajax.js
- function ajax()
- {
- //---------------------
- // Private Declarations
- //---------------------
- var _request = null;
- var _this = null;
- //--------------------
- // Public Declarations
- //--------------------
- this.GetResponseXML = function()
- {
- return (_request) ? _request.responseXML : null;
- }
- this.GetResponseText = function()
- {
- return (_request) ? _request.responseText : null;
- }
- this.GetRequestObject = function()
- {
- return _request;
- }
- this.InitializeRequest = function(Method, Uri)
- {
- _InitializeRequest();
- _this = this;
- switch (arguments.length)
- {
- case 2:
- _request.open(Method, Uri);
- break;
- case 3:
- _request.open(Method, Uri, arguments[2]);
- break;
- }
- if (arguments.length >= 4) _request.open(Method, Uri, arguments[2], arguments[3]);
- this.SetRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
- }
- this.SetRequestHeader = function(Field, Value)
- {
- if (_request) _request.setRequestHeader(Field, Value);
- }
- this.Commit = function(Data)
- {
- if (_request) _request.send(Data);
- }
- this.Close = function()
- {
- if (_request) _request.abort();
- }
- //---------------------------
- // Public Event Declarations.
- //---------------------------
- this.OnUninitialize = function() { };
- this.OnLoading = function() { };
- this.OnLoaded = function() { };
- this.OnInteractive = function() { };
- this.OnSuccess = function() { };
- this.OnFailure = function() { };
- //---------------------------
- // Private Event Declarations
- //---------------------------
- function _OnUninitialize() { _this.OnUninitialize(); };
- function _OnLoading() { _this.OnLoading(); };
- function _OnLoaded() { _this.OnLoaded(); };
- function _OnInteractive() { _this.OnInteractive(); };
- function _OnSuccess() { _this.OnSuccess(); };
- function _OnFailure() { _this.OnFailure(); };
- //------------------
- // Private Functions
- //------------------
- function _InitializeRequest()
- {
- _request = _GetRequest();
- _request.onreadystatechange = _StateHandler;
- }
- function _StateHandler()
- {
- switch (_request.readyState)
- {
- case 0:
- window.setTimeout("void(0)", 100);
- _OnUninitialize();
- break;
- case 1:
- window.setTimeout("void(0)", 100);
- _OnLoading();
- break;
- case 2:
- window.setTimeout("void(0)", 100);
- _OnLoaded();
- break;
- case 3:
- window.setTimeout("void(0)", 100);
- _OnInteractive();
- break;
- case 4:
- if (_request.status == 200)
- _OnSuccess();
- else
- _OnFailure();
- return;
- break;
- }
- }
- function _GetRequest()
- {
- var obj;
- try
- {
- obj = new XMLHttpRequest();
- }
- catch (error)
- {
- try
- {
- obj = new ActiveXObject("Microsoft.XMLHTTP");
- }
- catch (error)
- {
- return null;
- }
- }
- return obj;
- }
- }
- FILE 2 : index.php
- <html>
- <head>
- <script language="Javascript" type="text/javascript">
- someObject = function()
- {
- this.OnSuccess = function()
- {
- document.getElementById('TextDiv').innerHTML = this.GetResponseText();
- }
- this.GetData = function()
- {
- this.InitializeRequest('POST', 'testAjax.php');
- this.Commit(null);
- }
- }
- someObject.prototype = new ajax();
- myObject = new someObject();
- </script>
- </head>
- <body>
- <div id="TextDiv">Text</div>
- <input type="button" value="Click Me" onclick="myObject.GetData();" />
- </body>
- </html>
- FILE 3 : testAjax.php
- <html>
- <head>
- <title>Hello!</title>
- </head>
- <body>
- <?php
- echo ("Hello World!");
- ?>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment