Appfuse:添加自定义页面组件
2024-10-19 01:31:23
我之前是做ASP.NET的,碰到被多个页面都使用的类似组件后,就想着采用ascx(用户自定义组件)来解决,那做Java我也想用这种方案。
我要做的效果如下:
实现方案:tag方式(自定义标签)
1. 首先定义自己的tag
<%@ tag body-content="scriptless" pageEncoding="UTF-8"%>
<%@ attribute name="table" required="true"%>
<%@ attribute name="idfield" required="true"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<c:set var="base" value="${pageContext.request.contextPath}" />
<c:set var="typeList" />
<script src="<c:url value="/scripts/jquery/jquery.1.10.2.min.js" />"></script>
<form method="post">
<div id="divRecomment">
<fmt:message key="recomment.title" />
<select id="recommendAction" name="recommendAction">
<c:forEach items="${recommenttype}" var="t">
<option value="${t.key}">${t.value}</option>
</c:forEach>
<select>
<input type="button" onclick="handleRecomment();"
value='<fmt:message key="recomment.submit"/>' class="btn btn-primary" />
</div>
</form>
recommend.tag
2. 使用自定义的标签
<%@ taglib prefix="t" tagdir="/WEB-INF/tags" %>
<t:recommend table="" idfield=""></t:recommend>
3. recommenttype 的数据源:使用页面对应的Controller中的handleRequest
HashMap<String,String> recommentType = new HashMap<String,String>();
recommentType.put("1", "首页");
recommentType.put("2", "其他");
request.setAttribute(Constants.RECOMMENT_TYPE, recommentType);
handleRequest
附用到的样式
#divRecomment{
margin-left:12px;
}
#divRecomment select{
width:200px;
height:38px;
border:1px solid #cccccc;
}
main.css
最新文章
- 管理Activity 用户在主界面按两次回退退出系统
- 一步一步学python(五) -条件 循环和其他语句
- 【译】Objectively Speaking 2: A Crash Course in Objective-C for iOS 6
- cat: can&#39;t open &#39;/lib/modules/2.6.35.3-571-gcca29a0/modules.dep&#39;: No such file or directory
- Android Handler 机制 - Looper,Message,MessageQueue
- 一个基于JRTPLIB的轻量级RTSP客户端(myRTSPClient)——收流篇:(三)RTSP命令解析
- 201521123061 《Java程序设计》第十三周学习总结
- 【翻译】Ext JS 6早期访问版本发布
- window 7 安装Jmeter并配置https录制脚本
- AXI4 STREAM DATA FIFO
- 『字典树 trie』
- “数据上帝” Jeff Hammerbacher
- python2 里边自定义线程池
- python测试开发django-38.多对多(ManyToManyField)查询
- linux:C++实现ping
- UIView的alpha属性和hidden属性
- 在ubuntu16中部署Django使用memcached作为缓存
- APP测试功能点总结
- css background-position结合disaply:inline-block使用
- Got fatal error 1236 from master when reading data from binary log: &#39;Could not find first log file name in binary log index file&#39;