首页 > 代码库 > 用freemarker定义宏实现自定义公用控件

用freemarker定义宏实现自定义公用控件

参考文章:

Freemarker自定义标签的简单分析 

定义一个基本的文本框:传入参数为:resourceName idName resourceVal="" idVal="" classVal="",其中resourceName ,idName为必填, resourceVal="" idVal="" classVal="" 分别为选填,其中必填都作为空间的 name,选填的都作为结果值,具体的见代码:

html中 macro自定义如下:

<#macro txtResource resourceName idName  resourceVal="" idVal="" classVal="">    <input type="text" name="${resourceName}" value="${(resourceVal)!}" class="${(classVal)!}" readonly="readonly" 
style
="cursor:pointer" /> &nbsp;<a class="xm_ablue" href="javascript:clearDicTree(‘${resourceName}‘,‘${idName}‘)">清空</a> <input type="hidden" name="${idName}" value="${(idVal)!}"/> <#-- 绑定输点击清空时的事件--> <script> function clearDicTree(resourceName,idName) { $("input[name=‘"+resourceName+"‘]").val(‘‘);
$(
"input[name=‘"+idName+"‘]").val(‘‘);
}
</script>
</#macro>

调用macro 控件:

<@txtResource resourceName="parentName" idName="parentId" resourceVal="张三" idVal="1" classVal="icon2"/>

界面展示效果

点击“清空”按钮,则清空文本框中的内容;点击文本框中js也可以写在控件定义的 html中