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

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

?? usetaglibs.js

?? jakarta-taglibs
?? JS
字號:
/* ====================================================================
 * 
 * The Apache Software License, Version 1.1
 *
 * Copyright (c) 1999 The Apache Software Foundation.  All rights 
 * reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer. 
 *
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * 3. The end-user documentation included with the redistribution, if
 *    any, must include the following acknowlegement:  
 *       "This product includes software developed by the 
 *        Apache Software Foundation (http://www.apache.org/)."
 *    Alternately, this acknowlegement may appear in the software itself,
 *    if and wherever such third-party acknowlegements normally appear.
 *
 * 4. The names "The Jakarta Project", "Tomcat", and "Apache Software
 *    Foundation" must not be used to endorse or promote products derived
 *    from this software without prior written permission. For written 
 *    permission, please contact apache@apache.org.
 *
 * 5. Products derived from this software may not be called "Apache"
 *    nor may "Apache" appear in their names without prior written
 *    permission of the Apache Group.
 *
 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
 * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
 * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 * ====================================================================
 *
 * This software consists of voluntary contributions made by many
 * individuals on behalf of the Apache Software Foundation.  For more
 * information on the Apache Software Foundation, please see
 * <http://www.apache.org/>.
 *
 * file: useTagLibs.js
 * author: Dan Mandell [dmandell@stanford.edu]
 * -------------------------------------------
 * JavaScript implementation for the useTagLibs.html floater of the
 * UltraDev Custom Tag Library extension. Pings the TLDParser servlet
 * via an HTTP request for a list of TLD files to populate the 
 * Tag Library drop down list. When the user selects a taglib for use, 
 * checks the tagLibData.js file (the file of JavaScript associative
 * array declarations that contains all locally cached taglibs) for
 * the taglib JavaScript declaration. If it is not found locally,
 * pings the TLDParser servlet for a description of the taglib as a 
 * series of JavaScript associative array declarations, appends them
 * to the tagLibData.js file, and loads the names of the taglib's
 * tags into the Insert Taglib dropdown menu. If the namespace
 * instantiation for the chosen taglib does not exist at the top of
 * the JSP, asks the user for the required TLD and PREFIX
 * values and inserts it at the top of the page.
 *
 * Also Implements the purgeCache() function, which removes all 
 * JavaScript taglib declarations from the tagLibData.js file, 
 * to reduce memory footprint (since most taglibs take up 1 to 5 kb 
 * of memory, roughly 200-1000 taglibs present in the tagLibData.js file
 * will increase UltraDev's memory footprint by 1 MB).
 */

var TL_DATA = "tagLibData.js";
var TL_DATA_LOC = dw.getConfigurationPath() + "/Commands/customTags/";
var DATA_INIT = "taglibs = new Array();\n"
var NO_CTL_IN_USE = "No Tag Library In Use";
var ctServletURL = "http://localhost:8080/TLDParser/servlet/TLDParser";
var resp = (MMHttp.getText(ctServletURL + "?mode=tldlist")).data.toLowerCase();
var taglibList = resp.split("\t");
var ddMenu = document.selected_taglib.options;
var numPrevOpts = 0;
var libName; // name of the currently selected tag library

/* Load the Use Taglib drop down menu with the list of taglibs obtained
 * from pinging server for available TLDs.
 */

for (i = 0; i < taglibList.length; i++) {
	ddMenu[i] = new Option(taglibList[i]);
}


/* function: isAvailableInCodeView()
 * ---------------------------------
 * Called by UltraDev. Tells UltraDev that the floater should be
 * available when the user is in "Code View" mode.
 */

function isAvailableInCodeView() {
	return true;
}

/* function: useTaglib()
 * ---------------------
 * Checks if the chosen taglib is stored in memory (which is
 * always identical to the local cache). If not, calls
 * retrieveTaglib() to find it on the server. If it can be found,
 * calls insertTaglib().
 */

function useTaglib() {
	var taglibAvailable = true;
	var selectedLib = document.selected_taglib.options[document.selected_taglib.selectedIndex];

	if (selectedLib == null) {
		return; // disallow selection of empty option
	}

	libName = selectedLib.text;

	if (taglibs[libName] == null) {
		taglibAvailable = retrieveTaglib();
	}
	if (taglibAvailable) insertTaglib();
}

/* function: retrieveTaglib()
 * --------------------------
 * Makes an HTTP request to the server for a JavaScript declaration of
 * the chosen taglib. If the server sucessfully returns the declaration, 
 * calls addTaglib to add the declaration to local cache, and returns
 * true. Raises an alert and returns false otherwise.
 */

function retrieveTaglib() {
	var resp = (MMHttp.getText(ctServletURL + "?mode=ultradev&prefix=" + libName)).data			

	if (!resp == "") {
		return addTaglib(resp);
	}
	else {
		alert("Tag library \"" + libName + "\" not found on server.");
		return false;
	}
}

/* function: insertTaglib()
 * ------------------------
 * If the namespace instantiation for the chosen taglib does not exist in the
 * JSP, ask user for required TLD and PREFIX values and insert namespace
 * instantiation at top of page. Call supplyTagOptions to populate the
 * Insert Tag drop-down menu with the chosen taglib's tags.
 */

function insertTaglib() {
	var prefix; //prefix chosen by user to serve as taglib's namespace
	theDOM = dw.getDocumentDOM();
	docObj = theDOM.documentElement;
	
	if (docObj.outerHTML.indexOf(libName + ".tld") < 0 || docObj.outerHTML.indexOf(libName + ".tld\"") < 0) {
		var uri = prompt("Enter the URI of the tld file for this tag library","/WEB-INF/" + libName + ".tld");
		if (uri == null) return; 	//the user hit cancel, do not instantiate namespace or load
		prefix = prompt("Enter tag library prefix (must be alphanumeric)",libName.replace(/\W*/g, "")); // require that prefix is alphanumeric
		if (prefix == null) return; 	//the user hit cancel, do not instantiate namespace or load
		var taglibDec = "<%@ taglib uri=\"" + uri + "\" prefix=\"" + prefix + "\" %>";	
		docObj.outerHTML = taglibDec + "\n" + docObj.outerHTML;
	}
	supplyTagOptions();
}

/* function: supplyTagOptions() 
 * ----------------------------
 * Populates the Insert Tag drop-down menu with the list of available
 * tags for the current taglib in use. If no taglib in use, only
 * populates menu with the NO_CTL_IN_USE message.
 */

function supplyTagOptions() { 
	var list = document.selected_tag.options;
	var numTags;
	var filled;
	
	if (libName != null) {
		numTags = taglibs[libName].length;
		for (filled = 0; filled < numTags; filled++) {
			if (list[filled] == null) {
				list[filled] = new Option((taglibs[libName][filled])[0]);
			}
			else list[filled].text = (taglibs[libName][filled])[0];
		}
	}
	else {
		list[0].text = NO_CTL_IN_USE;
		filled = 1;	 // only 1 option has been filled
	}	

	for (i = filled; i < list.length; ) {
		list[i] = null;  // set remaining options to null so they don't
			        // appear.
	}
}

/* function: purgeCache()
 * ----------------------
 * Removes all taglib JavaScript declarations from local cache. Re-
 * evaluates local cache so memory from all previously used taglibs
 * can be freed.
 */

function purgeCache() {
	var msg = "Delete all local cache?\n(files on server will be unaffected)"

	if (confirm(msg)) {
		var result = DWfile.write(TL_DATA_LOC + TL_DATA, DATA_INIT);
		if (!result) { 
			alert("File IO error: " + "TL_DATA" + " could not be written."); 
		}
		eval(DWfile.read(TL_DATA_LOC + TL_DATA)); // refresh memory to reflect purged cache
		libName = null;
		supplyTagOptions();
	}
}

/* function: addTaglib()
 * ---------------------
 * Appends the server's HTTP response of JavaScript declarations for the 
 * chosen taglib to the local cache. Re-evaluates the local cache so the
 * new taglib is stored into memory for use.
 */

function addTaglib(newLib) {
	var result = DWfile.write(TL_DATA_LOC + TL_DATA, newLib, "append");
	if (!result) { 
		alert("File IO error: " + "TL_DATA" + " could not be written."); 
		return false;
	}
	else {
		eval(DWfile.read(TL_DATA_LOC + TL_DATA)); // refresh memory to reflect new taglib in cache
		return true; // file was succesfully appended with new Taglib data
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人亚洲精品久久久久软件| 91精品久久久久久久91蜜桃| 国产精品456露脸| 日本欧美在线看| 亚洲高清不卡在线观看| 一个色综合av| 亚洲综合成人网| 亚洲女性喷水在线观看一区| 国产精品网站在线观看| 中文字幕精品一区二区精品绿巨人| 26uuu国产一区二区三区| 欧美成人艳星乳罩| 欧美xxx久久| 精品少妇一区二区三区| 久久亚洲综合av| 久久女同精品一区二区| 久久这里只有精品6| 久久综合久久综合九色| 久久久99精品免费观看不卡| 国产精品视频免费看| 中文字幕一区二区三区蜜月| 亚洲欧美视频在线观看视频| 亚洲另类春色国产| 三级精品在线观看| 精品一二线国产| 国产成人精品免费| 99国产一区二区三精品乱码| 色94色欧美sute亚洲13| 欧美探花视频资源| 欧美男人的天堂一二区| 欧美电影免费观看高清完整版在线 | 成人av网址在线| 97久久超碰精品国产| 在线视频一区二区三区| 欧美一区中文字幕| 精品福利一二区| 国产精品理论片在线观看| 亚洲综合男人的天堂| 日本不卡高清视频| 国产成人午夜视频| 一本大道综合伊人精品热热| 欧美欧美欧美欧美| 国产欧美日韩激情| 亚洲一区二区三区精品在线| 麻豆免费精品视频| 成人理论电影网| 欧美日韩国产一区| 久久久99久久精品欧美| 一区二区三区在线视频免费 | 免费观看在线综合色| 国产成人av福利| 色噜噜狠狠色综合欧洲selulu| 欧美巨大另类极品videosbest | 国产精品女上位| 亚洲国产一区二区三区青草影视| 麻豆国产一区二区| 99亚偷拍自图区亚洲| 91精品午夜视频| 中文字幕精品—区二区四季| 性欧美大战久久久久久久久| 风间由美中文字幕在线看视频国产欧美| 91啦中文在线观看| 欧美一区二区播放| 亚洲日本护士毛茸茸| 精品一区二区免费视频| 欧美亚州韩日在线看免费版国语版| 精品久久久久久久久久久久久久久 | 欧美午夜精品一区二区蜜桃| 久久久久久夜精品精品免费| 亚洲午夜影视影院在线观看| 国产精品77777| 欧美精品丝袜中出| 18成人在线观看| 国产在线麻豆精品观看| 在线观看日产精品| 中文字幕va一区二区三区| 日韩av中文字幕一区二区三区| 99国产精品久久久久久久久久| 欧美va天堂va视频va在线| 亚洲综合自拍偷拍| a在线播放不卡| 久久视频一区二区| 舔着乳尖日韩一区| 色哟哟在线观看一区二区三区| 国产亚洲欧洲997久久综合| 美女视频免费一区| 欧美日韩国产区一| 一区二区三区日韩精品视频| 成人午夜激情在线| 久久久天堂av| 久久精品国产精品青草| 欧美人成免费网站| 亚洲综合视频在线观看| 91在线视频免费观看| 久久久国产午夜精品| 国精产品一区一区三区mba视频| 7777精品久久久大香线蕉| 亚洲一区二区欧美日韩| 欧美午夜寂寞影院| 亚洲一区二区三区国产| 在线观看精品一区| 亚洲最新视频在线观看| 欧美性色综合网| 亚洲一级电影视频| 精品视频一区二区不卡| 亚洲一区二区在线免费观看视频| 99久久国产综合精品色伊| 中文字幕在线不卡视频| av成人老司机| 亚洲免费在线视频| 日本精品裸体写真集在线观看| 亚洲日本青草视频在线怡红院 | 欧美精品xxxxbbbb| 日韩av在线播放中文字幕| 91精品一区二区三区在线观看| 青青草成人在线观看| 日韩欧美国产三级| 国产最新精品精品你懂的| 精品日韩99亚洲| 粉嫩久久99精品久久久久久夜| 欧美国产国产综合| 91在线精品一区二区| 一区二区三区欧美| 欧美日韩国产123区| 蜜臀久久99精品久久久久宅男| 日韩欧美第一区| 国内精品在线播放| 久久精品综合网| 波多野结衣中文字幕一区| 欧美不卡在线视频| 国产精品一区二区91| 国产精品国产三级国产有无不卡| 国产999精品久久久久久| 中文字幕人成不卡一区| 91在线精品一区二区| 首页国产欧美日韩丝袜| 欧美午夜电影一区| 蜜臀av一区二区在线免费观看| 久久婷婷成人综合色| 成人av在线播放网址| 亚洲福利视频一区二区| 欧美一区二区三区色| 国产精品夜夜爽| 国产精品久久久久一区| 欧美午夜精品免费| 亚洲电影一区二区三区| 精品国产精品网麻豆系列| 成人自拍视频在线| 亚洲男人电影天堂| 欧美精品一区二区三区四区| 高潮精品一区videoshd| 亚洲国产成人va在线观看天堂| 91精品在线麻豆| caoporen国产精品视频| 亚洲小说春色综合另类电影| 日韩美女视频在线| a美女胸又www黄视频久久| 亚洲电影一区二区三区| 久久久噜噜噜久久中文字幕色伊伊| 成人av在线资源网| 久久精品国产一区二区三区免费看| 日韩精品一区二区三区三区免费| 9l国产精品久久久久麻豆| 三级亚洲高清视频| 中文字幕精品—区二区四季| 4438亚洲最大| 北岛玲一区二区三区四区| 日韩精彩视频在线观看| 久久婷婷综合激情| 色综合视频一区二区三区高清| 无吗不卡中文字幕| 欧美极品xxx| 7777精品伊人久久久大香线蕉| 国产精品亚洲午夜一区二区三区| 亚洲第一成人在线| 国产日韩欧美激情| 日韩一区二区影院| 欧美在线观看一区二区| 国产一区二区免费视频| 婷婷开心激情综合| 国产精品色一区二区三区| 欧美电影免费提供在线观看| 91麻豆国产精品久久| 精品一区二区久久久| 日本在线不卡视频| 亚洲欧美色综合| 中文字幕人成不卡一区| 欧美一级专区免费大片| 欧美日韩一区二区电影| 91麻豆免费在线观看| 国产一区二区主播在线| 美女尤物国产一区| 亚洲欧美日韩人成在线播放| 国产精品全国免费观看高清| 91麻豆精品国产91久久久久久久久| 国产91清纯白嫩初高中在线观看| 久久国产成人午夜av影院| 亚洲香蕉伊在人在线观| 亚洲国产成人av| 中文字幕一区二区不卡|