⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 atlasruntime.js

📁 《圣殿祭司的ASP.NET 2.0开发详解——使用C#》光盘内容.包含了书籍所含的源代码.非常经典的一本asp.net2.0的书籍
💻 JS
📖 第 1 页 / 共 5 页
字号:
                if (properties != null) {
            for (var name in properties) {
                this[name] = properties[name];
            }
        }
    }
}

Web.Net.MethodRequestError = function(message, stackTrace, exceptionType) {
    var _message = message;
    var _stackTrace = stackTrace;
    var _exceptionType = exceptionType;
    
    this.get_message = function() {
        return _message;
    }
    
    this.get_stackTrace = function() {
        return _stackTrace;
    }
    
    this.get_exceptionType = function() {
        return _exceptionType;
    }
}
Type.registerClass('Web.Net.MethodRequestError', Web.Net.MethodRequestError);
Web.Net.ServiceMethodRequest = function() {
    Web.Net.ServiceMethodRequest.initializeBase(this);

    this.getEffectiveUrl = function() {
                return Web.Net.WebRequest.createUrl(this.get_url(), { mn : this.get_methodName() } );
    }
    
    this.invoke = function(userContext) {
                this.set_body(Web.Serialization.JSON.serialize(this.get_parameters()));
        
        Web.Net.ServiceMethodRequest.callBaseMethod(this, 'invoke', [userContext]);
    }
}
Type.registerClass('Web.Net.ServiceMethodRequest', Web.Net.MethodRequest);

Web.Net.ServiceMethodRequest.callMethod = function(methodURL, methodName, params, onMethodComplete,
    onMethodTimeout, onMethodError, userContext) {
    
    var request = new Web.Net.ServiceMethodRequest();
    request.set_url(methodURL);
    return Web.Net.MethodRequest.callMethod(request, methodName, params,
        onMethodComplete, onMethodTimeout, onMethodError, userContext);
}

Web.Net.ServiceMethodRequest.createProxyMethod = function(proxy, methodName) {

        var numOfParams = arguments.length-2;
    
        var createWebMethodArguments = arguments;

        proxy[methodName] = function() {
    
                                var args = {};
        for (var i=0; i<numOfParams; i++)
            args[createWebMethodArguments[i+2]] = arguments[i];
        
                        var callMethodArgs = [ proxy.path, methodName, args ];
        
                for (var i=0; i+numOfParams<arguments.length; i++)
            callMethodArgs[i+3] = arguments[numOfParams+i];
        
                return Web.Net.ServiceMethodRequest.callMethod.apply(null, callMethodArgs);
    }
}
Web.Net.PageMethodRequest = function() {
    Web.Net.PageMethodRequest.initializeBase(this);

    this.getEffectiveUrl = function() {
        var form = document.forms[0];
        return form.action;
    }

    this.invoke = function(userContext) {
        var form = document.forms[0];

                
                var bodyDictionary = new Object();
        bodyDictionary["__serviceMethodName"] = this.get_methodName();
        bodyDictionary["__serviceMethodParams"] = Web.Serialization.JSON.serialize(this.get_parameters());

                var count = form.elements.length;
        var element;
        for (var i = 0; i < count; i++) {
            element = form.elements[i];
            var tagName = element.tagName.toLowerCase();
            if (tagName == "input") {
                var type = element.type;
                if ((type == "text" || type == "hidden" || type == "password" ||
                    ((type == "checkbox" || type == "radio") && element.checked))) {
                    bodyDictionary[element.name] = element.value;
                }
            }
            else if (tagName == "select") {
                var selectCount = element.options.length;
                for (var j = 0; j < selectCount; j++) {
                    var selectChild = element.options[j];
                    if (selectChild.selected == true) {
                        bodyDictionary[element.name] = element.value;
                    }
                }
            }
            else if (tagName == "textarea") {
                bodyDictionary[element.name] = element.value;
            }
        }

                this.set_body(Web.Net.WebRequest.createQueryString(bodyDictionary, encodeFormPostField));
        
        Web.Net.PageMethodRequest.callBaseMethod(this, 'invoke', [userContext]);
    }

                function encodeFormPostField(param) {
                        param = param.replace('%', "%25");
        param = param.replace('&', "%26");
        param = param.replace('=', "%3d");
        param = param.replace('+', "%2b");
        return param;
    }
}
Type.registerClass('Web.Net.PageMethodRequest', Web.Net.MethodRequest);

Web.Net.PageMethodRequest.callMethod = function(methodName, params, onMethodComplete,
    onMethodTimeout, onMethodError, userContext) {
    
    var request = new Web.Net.PageMethodRequest();
    return Web.Net.MethodRequest.callMethod(request, methodName, params,
        onMethodComplete, onMethodTimeout, onMethodError, userContext);
}

Web.Net.PageMethodRequest.createProxyMethod = function(proxy, methodName) {

        var numOfParams = arguments.length-2;
    
        var createWebMethodArguments = arguments;

        proxy[methodName] = function() {
    
                                var args = {};
        for (var i=0; i<numOfParams; i++)
            args[createWebMethodArguments[i+2]] = arguments[i];
        
                        var callMethodArgs = [ methodName, args ];
        
                for (var i=0; i+numOfParams<arguments.length; i++)
            callMethodArgs[i+2] = arguments[numOfParams+i];
        
                return Web.Net.PageMethodRequest.callMethod.apply(null, callMethodArgs);
    }
}

Type.registerNamespace('Web.Services');

Web.Services.AuthenticationService = new function() {
    var _path = "ScriptServices/Microsoft/Web/Services/Standard/AuthenticationWebService.asmx";
    
    this.login = function(userName, password, onMethodComplete, onMethodTimeout, onMethodError) {
        return Web.Net.ServiceMethodRequest.callMethod(_path, "Login", 
            {userName:userName,password:password}, onMethodComplete, onMethodTimeout, onMethodError);
    }

    this.validateUser = function(userName, password, onMethodComplete, onMethodTimeout, onMethodError) {
        return Web.Net.ServiceMethodRequest.callMethod(_path, "ValidateUser", 
            {userName:userName,password:password}, onMethodComplete, onMethodTimeout, onMethodError);
    }
}

Web._Profile = function() {
    Web._Profile.initializeBase(this);

    var _properties = { };
    var _propertyNames;
    var _isDirty;
    var _autoSave;
    
    Web.Application.registerDisposableObject(this);
    
    this.get_autoSave = function() {
        return _autoSave;
    }
    this.set_autoSave = function(value) {
        _autoSave = value;
    }

    
    this.get_isDirty = function() {
        return _isDirty;
    }
    
    this.get_propertyNames = function() {
        return _propertyNames;
    }
    this.set_propertyNames = function(value) {
        _propertyNames = value;
    }
    
    this.loaded = new Web.Event(null);

    
    this.saved = new Web.Event(null);
    
    this.dispose = function() {
        this.loaded.dispose();
        this.saved.dispose();

        Web.Application.unregisterDisposableObject(this);
    }

    
    this.load = function() {
        Web.Net.ServiceMethodRequest.callMethod(Web._Profile.WebServicePath, "GetProfile",
                                                { properties: _propertyNames },
                                                Function.createDelegate(this, this._onRequestComplete), null, null,
                                                 true);
    }
    
    this.save = function() {
        Web.Net.ServiceMethodRequest.callMethod(Web._Profile.WebServicePath, "SetProfile",
                                                { values: _properties },
                                                Function.createDelegate(this, this._onRequestComplete), null, null,
                                                 false);
    }
    
    this._saveIfDirty = function() {
        if (_isDirty) {
            this.save();
        }
    }
    

    this._onRequestComplete = function(result, response, userContext) {
        if (userContext) {
            this._updateProperties(result);
            _isDirty = false;

            this.loaded.invoke(this, Web.EventArgs.Empty);
        }
        else {
            _isDirty = false;

            this.saved.invoke(this, Web.EventArgs.Empty);
        }
    }
    
    this._updateProperties = function(properties) {
        _properties = properties;
        this.properties = properties;
    }
}
Web._Profile.WebServicePath = 'ScriptServices/Microsoft/Web/Services/Standard/ProfileWebService.asmx';

Type.registerSealedClass('Web._Profile', null, Web.IDisposable);

Web.Profile = new Web._Profile();



window.XMLDOM = function(markup) {
    if (Web.Application.get_type() == Web.ApplicationType.InternetExplorer) {
        var progIDs = [ 'Msxml2.DOMDocument.6.0', 'Msxml2.DOMDocument.5.0', 'Msxml2.DOMDocument.4.0', 'Msxml2.DOMDocument.3.0', 'Msxml2.DOMDocument' ];
        
        for (var i = 0; i < progIDs.length; i++) {
            try {
                var xmlDOM = new ActiveXObject(progIDs[i]);
                xmlDOM.async = false;
                xmlDOM.loadXML(markup);
                
                return xmlDOM;
            }
            catch (ex) {
            }
        }
        
        return null;
    }
    else {
        var domParser = new DOMParser();
        return domParser.parseFromString(markup, 'text/xml');
    }
}

function _loadIECompatLayer(w) {

    if (!window.XMLHttpRequest) {
        window.XMLHttpRequest = function() {
            var progIDs = [ 'Msxml2.XMLHTTP', 'Microsoft.XMLHTTP' ];
    	    
            for (var i = 0; i < progIDs.length; i++) {
                try {
                    var xmlHttp = new ActiveXObject(progIDs[i]);
                    return xmlHttp;
                }
                catch (ex) {
                }
            }
    	    
            return null;
        }
    }
    
    if (!Debug.breakIntoDebugger) {
        Debug.breakIntoDebugger = function(message) {
            Debug.writeln(message);
            eval('debugger;');
        }
    }
}

_loadIECompatLayer(window);



Type.registerNamespace('Web.WebForms');



Web.WebForms._PageRequestManager = function() {
    var _form;
    var _scriptManagerID;
    var _updatePanelIDs;
    var _asyncPostbackControlIDs;
    var _additionalInput;
    var _onsubmit;
    var _originalDoPostBack;
    var _postbackSettings;
    var _request;
    var _referencedScripts = [];
    var _scriptsToLoad;
    var _currentLoadingScript;
    var _XMLScript;
    var _pageErrorMessage;
    var _inErrorMode = false;
    var _errorModeGrayDiv;
    var _errorModeTable;
    var _onWindowResizeHandler;

    this.get_inErrorMode = function() {
        return _inErrorMode;
    }

    this.get_inPostBack = function() {
        return _request != null;
    }

    this.get_pageErrorMessage = function() {
        return _pageErrorMessage;
    }

    this.abortPostBack = function() {
        if (this.get_inPostBack()) {
            _request.abort();
            _request = null;
            this.raisePropertyChanged('inPostBack');
        }
    }

        this.propertyChanged = new Web.Event(this, false);

    function addScriptToDocument(scriptElement) {
        var headElement = document.getElementsByTagName('HEAD')[0];
        headElement.appendChild(scriptElement);
    }

    this.clearError = function() {
        debug.assert(_onWindowResizeHandler != null, 'expected _onWindowResizeHandler to be set');
        window.detachEvent('onresize', _onWindowResizeHandler);

                debug.assert(_errorModeGrayDiv != null, '_errorModeGrayDiv should exist');
        debug.assert(_errorModeTable != null, '_errorModeTable should exist');
        _errorModeGrayDiv.style.display = 'none';
        _errorModeTable.style.display = 'none';

        this._enableFormElements();
        
                _pageErrorMessage = '';
        this.raisePropertyChanged('pageErrorMessage');

        _inErrorMode = false;
        this.raisePropertyChanged('inErrorMode');
    }

    function createPostbackSettings(async, panelID) {
debug.assert(async ? panelID : true, 'panelID should be specified if async is true');
        return { async:async, panelID:panelID };
    }

    function disableElements(elements) {
        for (var i = elements.length - 1; i >= 0; i--) {
            var elmt = elements[i];
            if (!elmt.disabled) {
                elmt.disabled = true;
            }
            else {
                elmt._wasDisabled = true;
            }
        }
    }

    this._disableFormElements = function() {
        disableElements(_form.getElementsByTagName("INPUT"));
        disableElements(_form.getElementsByTagName("SELECT"));
        disableElements(_form.getElementsByTagName("TEXTAREA"));
        disableElements(_form.getElementsByTagName("BUTTON"));
        disableElements(_form.getElementsByTagName("A"));
    }

        this._doPostBack = function(eventTarget, eventArgument) {
        _additionalInput = null;

        if (this.get_inPostBack()) {
                                    if (window.event) {
                window.event.returnValue = false;
            }
            return;
        }

                                        _postbackSettings = null;
        var postbackElement = findNearestElement(eventTarget);
        if (postbackElement) {
            _postbackSettings = getPostbackSettings(postbackElement);
        }
        else {
            _postbackSettings = createPostbackSettings(true, _scriptManagerID);
        }
        if (!_postbackSettings.async) {
            _originalDoPostBack(eventTarget, eventArgument);
            return;
        }

        var form = _form;
        form.__EVENTTARGET.value = eventTarget;
        form.__EVENTARGUMENT.value = eventArgument;
        this._onFormSubmit();
      

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -