lite
Version:
A cross platform template engine base on xml/html and javascript expression.
41 lines (40 loc) • 1.48 kB
text/xml
<test>
<unit title="输出语法/日期格式化语法">
<model>
{
quteAttr:"value' onclick='alert(1)",
url:"a&bb=1&c=\"",
script:"alert(1<2)",
array:[1],
date1 : +new Date(1981,7-1,25)
}
</model>
<case format="true" title="属性自动编码与不编码">
<source><![CDATA[<xml value="${quteAttr}" value2="$!{quteAttr}">${quteAttr}/$!{quteAttr}</xml>]]></source>
<expect><![CDATA[<xml value="value' onclick='alert(1)" value2="value" onclick="alert(1)">value' onclick='alert(1)/value' onclick='alert(1)</xml>]]></expect>
</case>
<case format="true" title="html uri和json自动编码">
<source><![CDATA[<a href="${url}" onclick="${script}" ondblclick="alert(${array})">a</a>]]></source>
<expect><![CDATA[<a href="a&bb=1&c=%22" onclick="alert(1<2)" ondblclick="alert([1])">a</a>]]></expect>
</case>
<case>
<source><![CDATA[<c:date-format pattern="YYYY-MM-DD" value="${date1}"/>]]></source>
<expect>1981-07-25</expect>
</case>
<case>
<model>{date:+new Date(2001,10,2,12,13,14,100)}</model>
<source><![CDATA[<div>
<c:date-format pattern="YYYY/M/DD" value="${date}"/>
<c:date-format pattern="YYYY年M月DD日" value="${date}"/>
<c:date-format pattern="DD日MM月 hh:mm:ss" value="${date}"/>
<c:date-format pattern=" hh:mm:ss" value="${date}"/>
</div>]]></source>
<expect><![CDATA[<div>
2001/11/02
2001年11月02日
02日11月 12:13:14
12:13:14
</div>]]></expect>
</case>
</unit>
</test>