OA--对于每个form表单(<s:iterator>生成)的处理
由于是后台传过来的,我们不知道form 有几个 也不能指定form的id和name,(其实也可以就是可能会冲突我们还是用下面讲的方法把)
之前有想过 对于每个form 里面都有一些参数,举个例子 项目申请时间, 点击申请的时候 要把当前时间和申请时间做个比较超过了的话就不能申请了
但是每个form里面的值都是不一样的 当时不懂得处理,方才才看到个获取父节点的方法;
<button class="apply" type="submit" onClick="if(confirm('确定申请?')){
this.parentNode.parentNode.action='project/apply';
this.parentNode.parentNode.submit();} ">
<span style="white-space:pre"> </span>申请
</button>
至于要哪个节点就是自己去找了;
我这边要弄的是 做一个确定申请的按钮:
也就是confirm();
在点击确定之后 表单就会提交,也<form>是<button>的父节点的父节点:如下:
<form method="post"> <div class="title"><s:property value="p.name"/>(发布人:<s:property value="p.fbname"/>)</div>
<div class="cont">
...<a href="project/projectMake-Info.action?pid=<s:property value="p.id"/>">查看详细</a>
</div>
<div class="bottom ongoingbottom">
<div class="details">
<div class="up">
<div class="people">要求</div>
<s:if test="p.android!=0">
<div class="people">android:<s:property value="p.android"/></div>
</s:if>
<s:if test="p.j2ee!=0">
<div class="people">j2ee:<s:property value="p.j2ee"/></div>
</s:if>
<s:if test="p.php!=0">
<div class="people">php:<s:property value="p.php"/></div>
</s:if>
<s:if test="p.qianduan!=0">
<div class="people">前端:<s:property value="p.qianduan"/></div>
</s:if>
<s:if test="p.ios!=0">
<div class="people">ios:<s:property value="p.ios"/></div>
</s:if>
<s:if test="p.unity3d!=0">
<div class="people">unity3d:<s:property value="p.unity3d"/></div>
</s:if> <div class="need"><s:property value="p.needdirection"/></div>
</div>
<div class="down">
<div class="starttime" id='1'>开始时间:<s:property value="p.begintime"/></div>
<div class="stoptime">截止时间:<s:property value="p.finishtime"/></div>
</div>
</div> <s:if test="#pustatus==0">
<input type="hidden" name="projectid" value="<s:property value="p.id"/>" /> <input type="hidden" name="userid" value="<s:property value="#session.u.id"/>" />
<!-- <input class="apply" type="submit" onClick="compare()"> </input>
-->
<input type="hidden" name="pbegintime" value="<s:property value="p.begintime"/>" />
<button class="apply" type="submit" onClick="if(confirm('确定申请?')){
this.parentNode.parentNode.action='project/apply';
this.parentNode.parentNode.submit();} "> 申请
</button>
</s:if>
<s:elseif test="#pustatus==1">
<button class="already_apply" disabled="disabled">
已申请
</button>
</s:elseif>
<s:else>
<button class="pass_apply" disabled="disabled">
申请通过
</button> </s:else>
</div>
</form>
很多代码 可以一掠而过,,
顺便讲过容易错的, <s:if>不是算父标签, 为什么了 因为在展示到页面的时候,<s:if>已经做完判断了 就不存在这个标签了
所以看是什么标签 还是以页面为主!!
版权声明:本文为博主原创文章,未经博主允许不得转载。
OA--对于每个form表单(<s:iterator>生成)的处理的更多相关文章
- vue+element创建动态的form表单.以及动态生成表格的行和列
动态创建form表单,网上有插件 (form-create) 不过我不知道它怎么用,没有使用成功,如果你使用成功了,欢迎下方留言. 最后我使用了笨方法,针对各个表单写好通用的组件,然后根据type用v ...
- 循序渐进PYTHON3(十三) --2-- DJANGO之FORM表单(自动生成HTML标签和自定制提示信息)
在上一次的代码上做出进一步修改,使之能在页面上显示自定制的报错信息,并且使用form自动创建标签的功能. views.py from django.shortcuts import render,Ht ...
- [原创]java WEB学习笔记62:Struts2学习之路--表单标签:form,表单标签的属性,textfield, password, hidden,submit ,textarea ,checkbox ,list, listKey 和 listValue 属性,select ,optiongroup ,checkboxlist
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- Struts(十四):通用标签-form表单
form标签是struts2标签中一个重要标签: 可以生成html标签,使用起来和html的form标签差不多: Strut2的form标签会生成一个table,进行自动布局: 可以对表单提交的值进行 ...
- java中的http请求的封装(GET、POST、form表单形式)
目前JAVA实现HTTP请求的方法用的最多的有两种:一种是通过HTTPClient这种第三方的开源框架去实现.HTTPClient对HTTP的封装性比较不错,通过它基本上能够满足我们大部分的需求,Ht ...
- form表单提交target属性使用
通过form表单提交刷新iframe <form action="doctor/selPackage" target="projectlistframe" ...
- form表单验证-Javascript
Form表单验证: js基础考试内容,form表单验证,正则表达式,blur事件,自动获取数组,以及css布局样式,动态清除等.完整代码如下: <!DOCTYPE html PUBLIC &qu ...
- Form 表单提交参数
今天因为要额外提交参数数组性的参数给form传到后台而苦恼了半天,结果发现,只需要在form表单对应的字段html空间中定义name = 后台参数名 的属性就ok了. 后台本来是只有模型参数的,但是后 ...
- form表单 ----在路上(15)
form 表单就是将用户的信息提交到服务器,服务器会将信息存储活着根据信息查询数据进行增删改查,再将其返回给用户. 基本格式: <form action="" method ...
随机推荐
- npm run build 时报错operation not permitted
1.项目使用vue框架,在npm run build 打包时报错: 访问对应的目录,发现无法打开,原来是文件被其他应用程序占用了,仔细看了一下,xftp文件传输的软件打开着,把它关闭以后,重新运行np ...
- 课时87. !important(掌握)
1.什么是important 作用:用于提升某个直接选中标签的选择器中的某个属性的优先级,可以将被指定的属性的优先级提升为最高. 注意点: 1.important只能用于直接选中,不能用于间接选中 p ...
- Vue2 轮播图组件 slide组件
Vue2原生始轮播图组件,支持宽度自适应.高度设置.轮播时间设置.左右箭头按钮控制,圆点按钮切换,以及箭头.圆点按钮是否显示. <v-carousel :slideData="slid ...
- day 90 DjangoRestFramework学习二之序列化组件
DjangoRestFramework学习二之序列化组件 本节目录 一 序列化组件 二 xxx 三 xxx 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 序列化组件 首先按照 ...
- PHP实现单文件、多文件上传 封装 面向对象实现文件上传
文件上传配置 客户端配置 1.表单页面 2.表单的发送方式为post 3.添加enctype = "multipart/form-data" <form action=&qu ...
- Role Helper
using System; using Microsoft.Xrm.Sdk; using Microsoft.Crm.Sdk.Messages; using System.Collections.Ge ...
- Centos7.5搭建Hadoop2.8.5完全分布式集群部署
一.基础环境设置 1. 准备4台客户机(VMware虚拟机) 系统版本:Centos7.5 节点配置: 192.168.208.128 --Master 192.168.208.129 --Slave ...
- 树莓派3B+学习笔记:12、安装FireFox浏览器
1.在终端中输入 sudo apt-get install iceweasel 2.安装完成后菜单中会自动生成快捷方式 什么是 iceweasel? Iceweasel 是 Firefox(火狐浏览器 ...
- MAC下绕开百度网盘限速下载的方法,三步操作永久生效
第一步:下载所需工具:(①②步我放在同一个文件夹,可一起下载,链接失效请留言) 工具地址:链接: https://pan.baidu.com/s/1raicYzM 密码: ve3n ①下载Aria2G ...
- 二叉树 ADT接口 遍历算法 常规运算
BTree.h (结构定义, 基本操作, 遍历) #define MS 10 typedef struct BTreeNode{ char data; struct BTreeNode * lef ...