/***Template
function Template()
{
this
this
this
this
this
this
this
this
this
this
this
this
this
this
this
this
this
this
this
this
this
this
this
this
this
this
this
this
}
/**
* 設置模板文件根目錄
* @param root
*/
function _set_root(root)
{
if(!this
{
this
}
this
}
/**
* 設定對未知模板變量的處理辦法
* @param unknowns
*/
function _set_unknowns(unknowns)
{
this
}
/**
* 設定模板文件
* @param handle
* @param filename
*/
function _set_file(handle
{
this
}
/**
* 設定模板變量
* @param varname
* @param value
*/
function _set_var(varname
{
if(!ntainsKey(varname))
{
this
}
if(!ntainsKey(varname))
{
this
}
else
{
this
this
}
//alert(varname+
}
/**
* 設定塊變量
* @param parent
* @param handle
* @param name
*/
function _set_block(parent
{
if(!this
{
this
}
if(name==
{
name=handle;
}
var str=this
var re=new RegExp(
//Matcher m=p
//var rs=m
//var t=m
//this
var arr=re
if(arr!=null)
this
str=str
this
}
/**
* 進行變量替換
* @param handle
* @return
*/
function _subst(handle)
{
if(!this
{
this
}
var str=this
var keys=this
//alert(keys
for(var i=
{
var key=keys[i];
var re=new RegExp(this
str=str
}
//alert(handle+
return str;
}
/**
* 進行變量復制
* @param target
* @param handle
* @param append
*/
function _parse(target
{
var str=this
if(append)
{
this
}
else
{
this
}
}
/**
* 返回替換後的文件
* @param varname
* @return
*/
function _p(varname)
{
return this
}
/**
* parse()和p()的合並
* @param target
* @param handle
* @param append
* @return
*/
function _pparse(target
{
this
document
}
/**
* 加載模板文件
* @param handle
* @return
*/
function _loadfile(handle)
{
if(ntainsKey(handle) && this
{
return true;
}
if(!ntainsKey(handle))
{
_halt(
return false;
}
var filename=this
if(!this
{
this
return false;
}
try
{
var fr=this
var s=fr
if(s==
{
halt(
return false;
}
this
}
catch(e)
{
}
return true;
}
/**
* 獲取變量
* @param varname
* @return
*/
function _get_var(varname)
{
if(ntainsKey(varname))
return this
else
return
}
/**
* 判斷目錄
* @param path
* @return
*/
function _is_dir(path)
{
if(this
return true;
else
return false;
}
/**
* 判斷文件
* @param filename
* @return
*/
function _file_exists(filename)
{
if(this
return true;
else
return false;
}
/**
* 文件名處理
* @param filename
* @return
*/
function _filename(filename)
{
if(!this
{
this
}
return this
}
/**
* 變量名處理
* @param varname
* @return
*/
function _varname(varname)
{
return
}
/**
* 完成字符串的處理
* @param str
* @return
*/
function _finish(str)
{
var re=new RegExp(
if(this
{
str=str
}
else if(this
{
str=str
}
else
{
;
}
return str;
}
function _halt(msg)
{
this
if(this
{
_haltmsg(msg);
}
if(this
{
alert(
//System
}
}
function _haltmsg(msg)
{
alert(
}
/**
* HashMap構造函數
*/
function HashMap()
{
this
this
}
/**
* 向HashMap中添加鍵值對
*/
HashMap
{
this[this
this
}
/**
* 從HashMap中獲取value值
*/
HashMap
{
return typeof this[this
? null : this[this
}
/**
* 從HashMap中獲取所有key的集合
*/
HashMap
{
var arrKeySet = new Array();
var index =
for(var strKey in this)
{
if(strKey
arrKeySet[index ++] = strKey
}
return arrKeySet
}
/**
* 從HashMap中獲取value的集合
*/
HashMap
{
var arrValues = new Array();
var index =
for(var strKey in this)
{
if(strKey
arrValues[index ++] = this[strKey];
}
return arrValues
}
/**
* 獲取HashMap的value值數量
*/
HashMap
{
return this
}
/**
* 刪除指定的值
*/
HashMap
{
delete this[this
this
}
/**
* 清空HashMap
*/
HashMap
{
for(var strKey in this)
{
if(strKey
delete this[strKey];
}
this
}
/**
* 判斷HashMap是否為空
*/
HashMap
{
return this
}
/**
* 判斷HashMap是否存在某個key
*/
HntainsKey = function(key)
{
for(var strKey in this)
{
if(strKey == this
return true;
}
return false;
}
/**
* 判斷HashMap是否存在某個value
*/
HntainsValue = function(value)
{
for(var strKey in this)
{
if(this[strKey] == value)
return true;
}
return false;
}
/**
* 把一個HashMap的值加入到另一個HashMap中
*/
HashMap
{
if(map == null)
return;
if(nstructor != JHashMap)
return;
var arrKey = map
var arrValue = map
for(var i in arrKey)
this
}
//toString
HashMap
{
var str =
for(var strKey in this)
{
if(strKey
str += strKey
+
}
return str;
}
<!
<!DOCTYPE HTML PUBLIC
<html>
<head>
<meta http
<title>無標題文檔</title>
</head>
<body>
<p>{HEAD}</p>
<p>{WELCOME}
</p>
<table width=
<!
<tr>
<!
<td>{NUMBER}</td>
<!
</tr>
<!
</table>
<p>{FOOT}</p>
</body>
</html>
<!
<table width=
<tr>
<td>網站首頁</td>
</tr>
</table>
<!
<table width=
<tr>
<td>版權所有
</tr>
</table>
<!
<script src=
<script>
var tmplt=new Template();
var root=location
root=unescape(root
tmplt
tmplt
tmplt
tmplt
tmplt
tmplt
tmplt
for(var i=
{
tmplt
for(var j=
{
tmplt
tmplt
}
tmplt
}
tmplt
tmplt
tmplt
</script>
From:http://tw.wingwit.com/Article/program/Java/Javascript/201311/25486.html