文档章节

JSP页面传List集合到Action中(并且支持动态添加行,删除行)

uug
 uug
发布于 11/16 10:29
字数 637
阅读 27
收藏 1

1:JSP页面(前端用的是H-UI框架)

1:HTML代码
<div class="cl pd-5 bg-1 bk-gray mt-20"> <span class="l">
	     <a href="javascript:;" onclick="add()" class="btn btn-primary radius"><i class="Hui-iconfont">&#xe600;</i> 添加行</a></span>
	     </div>
          <table id="table1" class="table table-border table-bordered table-striped">
            <thead>
              <tr class="text-c">
                <th>编号</th>
                <th>权限编号</th>
                <th>权限名称</th>
                <th>资源路径</th>
                <th>权限父编号</th>
                <th>操作</th>
              </tr>
            </thead>
            <tbody>
             <tr class="text-c">
                <th>0</th>
                <td><input type="text" class="input-text" placeholder="请输入权限编号" name="sysRigths[0].rightId" ></td>
                <td><input type="text" class="input-text" placeholder="请输入权限名称" name="sysRigths[0].rightName" ></td>
                <td><input type="text" class="input-text" placeholder="请输入资源路径" name="sysRigths[0].resourcePath" ></td>
                <td><input type="text" class="input-text" placeholder="请输入权限父编号" name="sysRigths[0].rightPid" ></td>
                <td><input class="btn btn-primary radius" type="button" onclick="del(this);" value="删除"></td>
              </tr>
              <tr class="text-c">
                <th>1</th>
                <td><input type="text" class="input-text" placeholder="请输入权限编号" name="sysRigths[1].rightId" ></td>
                <td><input type="text" class="input-text" placeholder="请输入权限名称" name="sysRigths[1].rightName" ></td>
                <td><input type="text" class="input-text" placeholder="请输入资源路径" name="sysRigths[1].resourcePath" ></td>
                <td><input type="text" class="input-text" placeholder="请输入权限父编号" name="sysRigths[1].rightPid" ></td>
                <td><input class="btn btn-primary radius" type="button" onclick="del(this);" value="删除"></td>
              </tr>
            </tbody>
          </table>
        </div>

2:JS代码
<script type="text/javascript">
var i=1;
function del(e) {
    $(e).parent().parent().remove();
    i--;
}

function add() {
       i++;
    $("#table1").find('tbody').append("<tr class=\"text-c\">\n" +
        "        <th>"+i+"</th>\n" +
		"        <td ><input type=\"text\" class=\"input-text\" placeholder=\"请输入权限编号\" name=\"sysRigths["+i+"].rightId\"></td>\n" +
		"        <td ><input type=\"text\" class=\"input-text\" placeholder=\"请输入权限名称\" name=\"sysRigths["+i+"].rightName\"></td>\n" +
		"        <td ><input type=\"text\" class=\"input-text\" placeholder=\"请输入资源路径\" name=\"sysRigths["+i+"].resourcePath\"></td>\n" +
		"        <td ><input type=\"text\" class=\"input-text\" placeholder=\"请输入权限父编号\" name=\"sysRigths["+i+"].rightPid\"></td>\n" +
        "        <td ><input type=\"button\" class=\"btn btn-primary radius\" onclick=\"del(this);\" value=\"删除\"></td>\n" +
        "     </tr>")
}
</script>

2:Action

1:SysRight对象

public class SysRight implements java.io.Serializable {

	// Fields
	private String rightId;
	private String rightName;
	private String resourcePath;
	private String rightPid;

	get/set方法省略
}

2:在对应的Action中定义SysRight集合

public class SysRightAction extends BaseAction implements Preparable, ModelDriven {
 
     private List<SysRight> sysRigths;
     
     get/set方法省略
}

3:要点解析

     (1)注意观察input输入框定义的name名称:name="sysRigths[0].rightId"   name="sysRigths[1].rightId"

     (2)有多少条数据,[]就写多少,例如:我有五条数据,第五条数据的[]就应该填[5]。

     (3)后台Action的会自动的将这些数据一条条的存入到sysRigrhs集合中。

© 著作权归作者所有

共有 人打赏支持
uug

uug

粉丝 8
博文 42
码字总数 18446
作品 0
河池
私信 提问
struts-request 请求参数的生命

以前我看过很多文章,大概的意思是:挡在浏览器请求时就会生成一个新的线程,request就会在整个线程的生命周期里,jsp->action->jsp,当线程注销时,request也会注销,当你再次请求浏览器时,...

cookqq
2012/04/06
0
0
servlet/filter/listener/interceptor区别与联系

由于最近两个月工作比较清闲,个人也比较“上进”,利用工作空余时间,也继续学习了一下,某天突然想起struts2和struts1的区别的时候,发现为什么struts1要用servlet,而struts2要用filter呢...

chenruibing
2015/08/18
0
0
servlet/filter/listener/interceptor区别与联系

由于最近两个月工作比较清闲,个人也比较“上进”,利用工作空余时间,也继续学习了一下,某天突然想起struts2和struts1的区别的时候,发现 为什么struts1要用servlet,而struts2要用filter呢...

lzw_me
2014/08/04
0
0
jWebBox v2.1 发布,JSP/FreeMaker 服务端布局工具

这是一个服务端(支持JSP和FreeMaker)页面布局工具,特点是简单,无XML,仅用400行源码实现了与Apache Tiles类似的页面布局功能。 目前一些服务端JSP页面布局工具的缺点: Apache Tiles: 功能...

yong9981
01/02
1K
9
JFinal 前台使用jstl+el获取Map封装的Model对象属性出错

问题描述: 在某个action中我使用Map>封装一个map对象,然后直接render到某个jsp页面,在1.1.6版本中使用jstl无法获得model的属性,例如${model.name}无法取。the class XX does not hava th...

小文大哥哥
2013/01/29
2.7K
5

没有更多内容

加载失败,请刷新页面

加载更多

EOS账户如何工作,我们如何获取eos账号?

EOS账户的工作方式是什么?帐户是存储在区块链中的人类可读名称。它可以由个人或一群人拥有,具体的取决于权限配置。需要一个帐户来将交易转移或推送到区块链。——EOSIO Wiki EOS账户如何工...

笔阁
14分钟前
0
0
iOS面试之@property

https://github.com/acBool/Blogs/blob/master/property/%40property%E4%BB%8B%E7%BB%8D.md @property介绍 相信做过iOS开发的同学都使用过@property,@property翻译过来是属性。在定义一个类...

壹峰
15分钟前
0
0
[springBoot系列]--springBoot注解大全

一、注解(annotations)列表 @SpringBootApplication:包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。其中@ComponentScan让spring Boot扫描到Configuration类并把它加......

Jack088
29分钟前
7
0
tomcat编译超过64k大小的jsp文件报错原因

  今天遇到一个问题,首先是在tomcat中间件上跑的web项目,一个jsp文件,因为代码行数实在是太多了,更新了几个版本之后编译报错了,页面打开都是报500的错误,500的报错,知道http协议返回...

SEOwhywhy
51分钟前
5
0
flutter http 请求客户端

1、pubspec文件管理Flutter应用程序的assets(资源,如图片、package等)。 在pubspec.yaml中,通过网址“https://pub.dartlang.org/packages/http#-installing-tab-”确认版本号后,将http(0...

渣渣曦
51分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部