Appfuse:添加自定义页面组件

我之前是做ASP.NET的,碰到被多个页面都使用的类似组件后,就想着采用ascx(用户自定义组件)来解决,那做Java我也想用这种方案。

我要做的效果如下:

实现方案:tag方式(自定义标签)

1. 首先定义自己的tag

 1 <%@ tag body-content="scriptless" pageEncoding="UTF-8"%>
 2 <%@ attribute name="table" required="true"%>
 3 <%@ attribute name="idfield" required="true"%>
 4 <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
 5 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
 6 <c:set var="base" value="${pageContext.request.contextPath}" />
 7 <c:set var="typeList" />
 8 <script src="<c:url value="/scripts/jquery/jquery.1.10.2.min.js" />"></script>
 9 <form method="post">
10     <div id="divRecomment">
11         <fmt:message key="recomment.title" />
12         &nbsp;&nbsp;
13         <select id="recommendAction" name="recommendAction">
14             <c:forEach items="${recommenttype}" var="t">
15                 <option value="${t.key}">${t.value}</option>
16             </c:forEach>
17         <select>
18         &nbsp;&nbsp; <input type="button" onclick="handleRecomment();"
19             value=‘<fmt:message key="recomment.submit"/>‘ class="btn btn-primary" />
20     </div>
21 </form>

recommend.tag

2. 使用自定义的标签

<%@ taglib prefix="t" tagdir="/WEB-INF/tags" %>

<t:recommend table="" idfield=""></t:recommend>

3. recommenttype 的数据源:使用页面对应的Controller中的handleRequest

1 HashMap<String,String> recommentType = new HashMap<String,String>();
2         recommentType.put("1", "首页");
3         recommentType.put("2", "其他");
4         request.setAttribute(Constants.RECOMMENT_TYPE, recommentType);

handleRequest

附用到的样式

1 #divRecomment{
2     margin-left:12px;
3 }
4 #divRecomment select{
5     width:200px;
6     height:38px;
7     border:1px solid #cccccc;
8 }

main.css

时间: 2024-08-30 11:11:20

Appfuse:添加自定义页面组件的相关文章

css页面组件

页面组件 1 元素的尺寸/边框/背景 1.1 css尺寸相关属性 height 高度 min-height 最小高度 max-height 最大高度 width 宽度 min-width 最小宽度 max-width 最大宽度 1.2 css内边距 padding 内边距 padding-left 左内边距 padding-right 右内边距 padding-top 上内边距 padding-bottom 下内边距 1.3 边框 border border-left|border-right|

Vue框架——页面组件中使用小组件

小组件在components文件夹中,页面组件在views文件夹中 一.先写小组件的vue,比如text.vue(在template设置模板渲染,style设置样式) <template> <div class="text"> <p>tttt</p> </div> </template> <script> export default { name: "text" } </sc

OAF点击事件对页面组件的Required属性不验证

在实际的需求中,OAF页面上很多字段设置了Required=YES,但是我们在点击某些按钮的时候,并不希望浏览器对其进行验证,可以通过设置 Disable Server Side Validation=true Disable Client Side Validation=true 来实现.如图. 也可以通过在processRequest中去捕获这个组件,再设置其AttributeKeyValue. OASubmitButtonBean ContinueBean=(OASubmitButtonB

学习 | jQuery移动端页面组件化开发(一)

最近在学习移动端组件化开发web页面,其中有好多小细节,值的去思考. 主要介绍JS的思路,具体的代码就不贴了,主要是想表达出一种思路 总体来说 1.入口文件,在入口文件中导入插件,插件样式,jquery // 首先要有config参数 var config ={ // config } // 进行实例化 var H5 = new H5Component(config) // 插入DOM中 $(".container").append(H5) // 触发组件中的自定义事件 $("

register.vue 注册页面组件

<template> <div class="wrapper"> <navigate :menuList="menuList" :tabIndexList="tabIndexList" :tabIndex="tabIndex" @tabIndexListNav="tabIndexListNav"></navigate> <registerBasicInf

页面组件

1 元素的尺寸/边框/背景 1.1 css尺寸相关属性 height 高度 min-height 最小高度 max-height 最大高度 width 宽度 min-width 最小宽度 max-width 最大宽度 1.2 css内边距 padding 内边距 padding-left 左内边距 padding-right 右内边距 padding-top 上内边距 padding-bottom 下内边距 1.3 边框 border border-left|border-right|borde

使用vue-cli 脚手架快速搭建单页面组件

在使用vue-cli时我们先了解一下什么是webpack. Webpack 是当下最热门的前端资源模块化管理和打包工具.它可以将许多松散的模块按照依赖和规则打包成符合生产环境部署的前端资源.还可以将按需加载的模块进行代码分隔,等到实际需要的时候再异步加载.通过 loader 的转换,任何形式的资源都可以视作模块,比如 CommonJs 模块. AMD 模块. ES6 模块.CSS.图片. JSON.Coffeescript. LESS 等. 我使用的是webpack2.x版本,官网链接:http

第54课 Qt 中的多页面切换组件

1. 多页面切换组件(QTabWidget) (1)能够在同一个窗口中自由切换不同页面的内容 (2)是一个容器类型的组件,同时提供友好的页面切换方式 2. QTabWidget的使用方式 (1)在应用程序中创建QTabWidget的对象 (2)将其他QWidget对象加入该对象中.但QTabWidget对象每次只能加入一个QWidget对象,同时将成生成一个新的页面. (3)将多个组件加入到同一个QTabWidget页面的解决方案 ①创建容器类型的组件对象 ②将多个子组件在容器对象中布局 ③将容

OAF_OAF页面元数据结构MDS的解析(概念)

2014-06-06 BaoXinjian 一.摘要 在OAF编译文件时,系统会通过XMLImport将所编译的XML文件,编译到数据库中,也就是MDS(Meta data Service),元数据库 而在OAF在展现给用户时,系统将存放MDS的内容,再通过程式组合成XML页面定义文件,并进行渲染 所以MDS可以存放了OAF页面的定义,所以二次开发时,在编译XML文件后,并不需要XML文件存放在服务器上 这个和Form Builder的fmx 和 fmb文件有类似性,fmx为编译后的问题,fmb