由于是后台传过来的,我们不知道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>生成)的处理的更多相关文章

  1. vue+element创建动态的form表单.以及动态生成表格的行和列

    动态创建form表单,网上有插件 (form-create) 不过我不知道它怎么用,没有使用成功,如果你使用成功了,欢迎下方留言. 最后我使用了笨方法,针对各个表单写好通用的组件,然后根据type用v ...

  2. 循序渐进PYTHON3(十三) --2-- DJANGO之FORM表单(自动生成HTML标签和自定制提示信息)

    在上一次的代码上做出进一步修改,使之能在页面上显示自定制的报错信息,并且使用form自动创建标签的功能. views.py from django.shortcuts import render,Ht ...

  3. [原创]java WEB学习笔记62:Struts2学习之路--表单标签:form,表单标签的属性,textfield, password, hidden,submit ,textarea ,checkbox ,list, listKey 和 listValue 属性,select ,optiongroup ,checkboxlist

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  4. Struts(十四):通用标签-form表单

    form标签是struts2标签中一个重要标签: 可以生成html标签,使用起来和html的form标签差不多: Strut2的form标签会生成一个table,进行自动布局: 可以对表单提交的值进行 ...

  5. java中的http请求的封装(GET、POST、form表单形式)

    目前JAVA实现HTTP请求的方法用的最多的有两种:一种是通过HTTPClient这种第三方的开源框架去实现.HTTPClient对HTTP的封装性比较不错,通过它基本上能够满足我们大部分的需求,Ht ...

  6. form表单提交target属性使用

    通过form表单提交刷新iframe <form action="doctor/selPackage" target="projectlistframe" ...

  7. form表单验证-Javascript

    Form表单验证: js基础考试内容,form表单验证,正则表达式,blur事件,自动获取数组,以及css布局样式,动态清除等.完整代码如下: <!DOCTYPE html PUBLIC &qu ...

  8. Form 表单提交参数

    今天因为要额外提交参数数组性的参数给form传到后台而苦恼了半天,结果发现,只需要在form表单对应的字段html空间中定义name = 后台参数名 的属性就ok了. 后台本来是只有模型参数的,但是后 ...

  9. form表单 ----在路上(15)

    form 表单就是将用户的信息提交到服务器,服务器会将信息存储活着根据信息查询数据进行增删改查,再将其返回给用户. 基本格式: <form action="" method ...

随机推荐

  1. npm run build 时报错operation not permitted

    1.项目使用vue框架,在npm run build 打包时报错: 访问对应的目录,发现无法打开,原来是文件被其他应用程序占用了,仔细看了一下,xftp文件传输的软件打开着,把它关闭以后,重新运行np ...

  2. 课时87. !important(掌握)

    1.什么是important 作用:用于提升某个直接选中标签的选择器中的某个属性的优先级,可以将被指定的属性的优先级提升为最高. 注意点: 1.important只能用于直接选中,不能用于间接选中 p ...

  3. Vue2 轮播图组件 slide组件

    Vue2原生始轮播图组件,支持宽度自适应.高度设置.轮播时间设置.左右箭头按钮控制,圆点按钮切换,以及箭头.圆点按钮是否显示. <v-carousel :slideData="slid ...

  4. day 90 DjangoRestFramework学习二之序列化组件

      DjangoRestFramework学习二之序列化组件   本节目录 一 序列化组件 二 xxx 三 xxx 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 序列化组件 首先按照 ...

  5. PHP实现单文件、多文件上传 封装 面向对象实现文件上传

    文件上传配置 客户端配置 1.表单页面 2.表单的发送方式为post 3.添加enctype = "multipart/form-data" <form action=&qu ...

  6. Role Helper

    using System; using Microsoft.Xrm.Sdk; using Microsoft.Crm.Sdk.Messages; using System.Collections.Ge ...

  7. Centos7.5搭建Hadoop2.8.5完全分布式集群部署

    一.基础环境设置 1. 准备4台客户机(VMware虚拟机) 系统版本:Centos7.5 节点配置: 192.168.208.128 --Master 192.168.208.129 --Slave ...

  8. 树莓派3B+学习笔记:12、安装FireFox浏览器

    1.在终端中输入 sudo apt-get install iceweasel 2.安装完成后菜单中会自动生成快捷方式 什么是 iceweasel? Iceweasel 是 Firefox(火狐浏览器 ...

  9. MAC下绕开百度网盘限速下载的方法,三步操作永久生效

    第一步:下载所需工具:(①②步我放在同一个文件夹,可一起下载,链接失效请留言) 工具地址:链接: https://pan.baidu.com/s/1raicYzM 密码: ve3n ①下载Aria2G ...

  10. 二叉树 ADT接口 遍历算法 常规运算

    BTree.h   (结构定义, 基本操作, 遍历) #define MS 10 typedef struct BTreeNode{ char data; struct BTreeNode * lef ...