亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? taconite-client.js

?? AJAX源碼集合
?? JS
字號:
/**    @fileoverview    This JavaScript file represents the core browser-side functionality    supplied by Taconite. In general, the tools in this file wrap an instance    of XMLHttpRequest object and provide utility methods for gather data from    form elements to be sent to the server as par of an Ajax request.*//**    Constructor for the AjaxRequest class.     <br><br>    Example:    <br><br>    var ajaxRequest = new AjaxRequest("YOUR_URL");    @class The AjaxRequest object wraps an instance of XMLHttpRequest and provides     facilities for setting functions that are called before a request is made    and after a request returns. By default, AjaxRequest handles the server    response by simply calling eval(), passing to it the responseText from     the XMLHttpRequestObject, of course assuming that the response was     generated by Taconite on the server side and that running eval() will     update the web page.<br><br>Example Usage:<br><br>var ajaxRequest = new AjaxRequest("YOUR_URL");    <br>ajaxRequest.addFormElements("form_element_id_attribute_value");    <br>ajaxRequest.sendRequest();    @constructor    @param {String} a String repesenting the URL to which the Ajax request    will be sent.*/function AjaxRequest(url) {    /** @private */    var self = this;    /** @private */    var xmlHttp = createXMLHttpRequest();        /** @private */    var queryString = "";    /** @private */    var requestURL = url;    /** @private */    var method = "GET";    /** @private */    var preRequest = null;    /** @private */    var postRequest = null;    /**        Return the instance of the XMLHttpRequest object wrapped by this object.        @return XMLHttpRequest    */    this.getXMLHttpRequestObject = function() {        return xmlHttp;    }    /**        Set the pre-request function. This function will be called prior to         sending the Ajax request. The pre-request function is passed a reference        to this object.        @param {Function} The function to be called prior to sending the Ajax        request. The function is passed a refernce of this object.    */    this.setPreRequest = function(func) {        preRequest = func;    }    /**        Set the post-request function. This function will be called after the        response has been received and after eval() has been called using the         XMLHttpRequest object's responseText. The post-request function is passed         a reference to this object.        @param {Function} The function to be called after receiving the Ajax        response. The function is passed a refernce of this object.    */    this.setPostRequest = function(func) {        postRequest = func;    }    /**        Send the Ajax request using the POST method. Use with caution -- some        browsers do not support the POST method with the XMLHttpRequest object.    */    this.setUsePOST = function() {        method = "POST";    }    /**        Send the Ajax request using the GET method, where parameters are sent        as a query string appended to the URL. This is the default behavior.    */    this.setUseGET = function() {        method = "GET";    }    /**        Add all of the form elements under the specified form to the query        string to be sent to the server as part of the Ajax request. The values        are automatically encoded.        @param {String} formID, the value of the id attribute of the form from        which you wish to accumulate the form values.    */    this.addFormElements = function(formID) {        var formElements = document.getElementById(formID).elements;        var values = toQueryString(formElements);        accumulateQueryString(values);    }    /** @private */    function accumulateQueryString(newValues) {        if(queryString == "") {            queryString = newValues;         }        else {            queryString = this.queryString + "&" +  newValues;        }    }    /**        Add the values of the named form elements to the query string to be        sent to the server as part of the Ajax request. This method takes any         number of Strings representing the form elements for wish you wish to         accumulate the values. The Strings must be the value of the element's         name attribute.<br><br>For example, these are all valid uses:<br>        <br>ajaxRequest.addNamedFormElements("element-name-1");        <br>ajaxRequest.addNamedFormElements("element-name-1", "element-name-2", "element-name-3");    */    this.addNamedFormElements = function() {        var elementName = "";        var namedElements = null;        for(var i = 0; i < arguments.length; i++) {            elementName = arguments[i];            namedElements = document.getElementsByName(elementName);            elementValues = toQueryString(namedElements);            accumulateQueryString(elementValues);        }    }    /**        Add the values of the id'd form elements to the query string to be        sent to the server as part of the Ajax request. This method takes any         number of Strings representing the ids of the form elements for wish you wish to         accumulate the values. The Strings must be the value of the element's         name attribute.<br><br>For example, these are all valid uses:<br>        <br>ajaxRequest.addFormElementsById("element-id-1");        <br>ajaxRequest.addFormElementsById("element-id-1", "element-id-2", "element-id-3");    */    this.addFormElementsById = function() {        var id = "";        var element = null;        var elements = new Array();        for(var h = 0; h < arguments.length; h++) {            element = document.getElementById(arguments[h]);            if(element != null) {                elements[h] = element;            }        }        elementValues = toQueryString(elements);        accumulateQueryString(elementValues);    }    /**        Send the Ajax request.    */    this.sendRequest = function() {        if(preRequest) {            preRequest(self);        }        var obj = this;        xmlHttp.onreadystatechange = function () { handleStateChange(self) };        requestURL = requestURL + "?ts=" + new Date().getTime();        if(method == "GET") {            requestURL = requestURL + "&" + queryString;            xmlHttp.open(method, requestURL, true);            xmlHttp.send(null);        }        else {            xmlHttp.open(method, requestURL, true);            xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");             xmlHttp.send(queryString);        }    }    handleStateChange = function(ajaxRequest) {        if(ajaxRequest.getXMLHttpRequestObject().readyState != 4) {            return;        }        if(ajaxRequest.getXMLHttpRequestObject().status == 200) {            var nodes = ajaxRequest.getXMLHttpRequestObject().responseXML.documentElement.childNodes;            var parser = null;            var parseInBrowser = "";            for(var i = 0; i < nodes.length; i++) {                if(nodes[i].nodeType != 1) {                    continue;                }                parseInBrowser = nodes[i].getAttribute("parseInBrowser");                if(parseInBrowser == "true") {                    parser = new XhtmlToDOMParser(nodes[i]);                    parser.startParsing();                    var js = parser.getJavaScript();                    eval(parser.getJavaScript());                }                else {                    eval(nodes[i].firstChild.nodeValue);                }            }            if(postRequest) {                postRequest(ajaxRequest);            }                }    }    /** @private */    function toQueryString(elements) {        var node = null;        var qs = "";        var name = "";        var tempString = "";        for(var i = 0; i < elements.length; i++) {            tempString = "";            node = elements[i];            name = node.getAttribute("name");            if(node.tagName.toLowerCase() == "input") {                if(node.type.toLowerCase() == "radio" || node.type.toLowerCase() == "checkbox") {                    if(node.checked) {                        tempString = name + "=" + node.value;                    }                }                if(node.type.toLowerCase() == "text" || node.type.toLowerCase() == "hidden") {                    tempString = name + "=" + encodeURIComponent(node.value);                }            }            else if(node.tagName.toLowerCase() == "select") {                tempString = getSelectedOptions(node);            }            else if(node.tagName.toLowerCase() == "textarea") {                tempString = name + "=" + encodeURIComponent(node.value);            }            if(tempString != "") {                if(qs == "") {                    qs = tempString;                }                else {                    qs = qs + "&" + tempString;                }            }        }        return qs;    }    /** @private */    function getSelectedOptions(select) {        var options = select.options;        var option = null;        var qs = "";        var tempString = "";        for(var x = 0; x < options.length; x++) {            tempString = "";            option = options[x];            if(option.selected) {                tempString = select.name + "=" + option.value;            }            if(tempString != "") {                if(qs == "") {                    qs = tempString;                }                else {                    qs = qs + "&" + tempString;                }            }        }        return qs;    }}/**    Create an instance of the XMLHttpRequest object, using the appropriate    method for the type of browser in which this script is running. For Internet    Explorer, it's an ActiveX object, for all others it's a native JavaScript    object.    @return an instance of the XMLHttpRequest object.*/function createXMLHttpRequest() {    if (window.ActiveXObject) {        return new ActiveXObject("Microsoft.XMLHTTP");    }    else if (window.XMLHttpRequest) {        return new XMLHttpRequest();    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
青青国产91久久久久久| 久久狠狠亚洲综合| 国产精华液一区二区三区| 欧美系列在线观看| 亚洲人成网站影音先锋播放| 国产麻豆9l精品三级站| 欧美丰满少妇xxxbbb| 久久亚洲春色中文字幕久久久| 亚洲成人免费在线观看| 天堂午夜影视日韩欧美一区二区| 一区二区三区在线免费观看| 国产成人福利片| 久久久久久一二三区| 国产精品一级黄| 国产精品看片你懂得| 岛国精品在线播放| 精品国产乱码久久久久久免费| 免播放器亚洲一区| 一本高清dvd不卡在线观看| 欧美岛国在线观看| 91美女福利视频| 极品瑜伽女神91| 中文字幕在线一区免费| 欧美日韩aaaaa| 亚洲在线视频免费观看| www.在线欧美| 一本久道中文字幕精品亚洲嫩| 成人精品电影在线观看| 91影院在线免费观看| av电影在线观看一区| 91偷拍与自偷拍精品| 欧美视频一区二| 日韩精品一区二区三区swag| 久久久久久影视| 亚洲精品视频观看| 亚洲成人自拍一区| 国产成人精品免费网站| 色哟哟国产精品| 91精品福利在线一区二区三区| 日韩无一区二区| 国产女同互慰高潮91漫画| 自拍偷拍国产精品| 久久国产人妖系列| 91亚洲精品一区二区乱码| 日韩欧美一区二区不卡| 国产精品网站在线观看| 天堂在线亚洲视频| 色婷婷久久久久swag精品| 日韩视频一区二区在线观看| 久久精品免费在线观看| 日日夜夜精品视频天天综合网| 懂色中文一区二区在线播放| 91精品国产一区二区人妖| 亚洲免费av观看| 色欧美片视频在线观看| 欧美国产精品一区二区| 国产麻豆精品在线观看| 日韩一级片在线播放| 亚洲一区二区三区免费视频| 99re这里只有精品首页| 国产三级精品视频| 国产综合一区二区| 日韩欧美国产1| 久久精品国产成人一区二区三区| 在线观看成人免费视频| 亚洲同性同志一二三专区| 成人av在线电影| 国产精品久久久久7777按摩| 不卡av在线网| 亚洲综合色网站| 日韩一级在线观看| 国产真实乱对白精彩久久| 国产欧美一区二区在线| av高清不卡在线| 亚州成人在线电影| 久久这里只精品最新地址| 国产91精品露脸国语对白| 成人欧美一区二区三区黑人麻豆 | 国产精品久久久久久久久晋中| a在线欧美一区| 久久精品国产精品亚洲综合| 国产午夜精品一区二区三区四区| 国产一区 二区| 中文字幕字幕中文在线中不卡视频| 色婷婷精品大视频在线蜜桃视频 | 日本一区二区三区视频视频| 懂色av噜噜一区二区三区av| 色综合久久久久久久久| 欧美无乱码久久久免费午夜一区| 国产精品国产三级国产有无不卡| gogogo免费视频观看亚洲一| 一区二区在线观看免费视频播放 | 国产成人亚洲综合a∨婷婷| 亚洲一区二区三区视频在线| 久久日韩粉嫩一区二区三区| 色素色在线综合| 国产精品一品视频| 男人的j进女人的j一区| 亚洲乱码中文字幕| 国产精品私人自拍| 久久久久久久久99精品| 欧美成人伊人久久综合网| 欧美日韩视频在线观看一区二区三区| 国产精品中文有码| 国产一区啦啦啦在线观看| 天天操天天综合网| 三级精品在线观看| 国内精品久久久久影院色| 国产一二精品视频| 国产高清不卡二三区| 国产乱对白刺激视频不卡| 国内外成人在线| 久久精工是国产品牌吗| 激情偷乱视频一区二区三区| 国产一区二区精品久久| 国产精品一区二区三区网站| 国产成人福利片| 欧美影视一区二区三区| 欧美精品自拍偷拍| 久久精品日韩一区二区三区| 久久伊人蜜桃av一区二区| 中文字幕亚洲一区二区va在线| 亚洲国产高清不卡| 亚洲大片免费看| 国产一区欧美日韩| 色就色 综合激情| 91精品国产综合久久小美女| 久久先锋影音av| 亚洲精品日日夜夜| 国产精品影视在线观看| 在线观看一区日韩| 久久精品无码一区二区三区| 亚洲成人一区在线| 97se亚洲国产综合在线| 91精品在线一区二区| 国产精品视频一二三| 久久草av在线| 欧美日韩高清一区二区| 日韩伦理电影网| 国产高清视频一区| 菠萝蜜视频在线观看一区| 在线观看亚洲a| 亚洲激情自拍视频| 国产精品一区二区在线播放| 日韩一区二区麻豆国产| 水野朝阳av一区二区三区| 成人app在线观看| 欧美激情中文字幕| 成人免费毛片a| 欧美激情一区二区三区全黄| 久久黄色级2电影| 精品精品欲导航| 日本女优在线视频一区二区| 日韩一区二区三区av| 国产一区二区三区免费| 欧美精品一区二区三区蜜桃视频| 青青草精品视频| 欧美sm极限捆绑bd| 精品一区二区免费| 国产精品视频免费看| 99精品一区二区三区| 亚洲国产日日夜夜| 51精品秘密在线观看| 男女男精品视频| 国产午夜精品一区二区三区视频| 国内外精品视频| 亚洲综合精品久久| 久久精品视频一区二区| 日本丰满少妇一区二区三区| 日本一不卡视频| 亚洲人成小说网站色在线| 欧美最猛性xxxxx直播| 强制捆绑调教一区二区| 亚洲国产精品黑人久久久| 911国产精品| www.亚洲色图| 久久超碰97中文字幕| 亚洲三级电影全部在线观看高清| 欧美日韩大陆一区二区| 成人午夜电影久久影院| 亚洲成人av电影| 国产精品久久久久aaaa樱花| 日韩精品一区二区三区三区免费| 91蜜桃在线观看| 99国产精品久久久| jizzjizzjizz欧美| 国产精品影音先锋| 国产精品一区二区无线| 国产乱妇无码大片在线观看| 欧美a级理论片| 美国毛片一区二区| 美女尤物国产一区| 久久er99热精品一区二区| 亚洲一二三四在线观看| 一卡二卡三卡日韩欧美| 国产在线视视频有精品| 日本免费在线视频不卡一不卡二| 亚洲激情图片一区| 亚洲一区二区三区不卡国产欧美| 亚洲欧洲综合另类在线|