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 ...
随机推荐
- iOS 12.0-12.1.2 越狱教程
unc0ver V3.0.0~b29 越狱工具已经开始公测,支持搭载 A8X-A11 处理器的 iOS 12.0-12.1.2 设备完整越狱,Cydia 商店和 Substrate 插件可正常安装并运 ...
- vue项目使用微信公众号支付总结
微信公众号支付 1. 使用jssdk调用微信支付,具体查看开发文档: 使用的vuex,在mutations中 wechatPay (state, data) { state.payObject = d ...
- PHP程序员的技术成长规划 第一阶段:基础阶段
第一阶段:基础阶段(基础PHP程序员) 重点:把LNMP搞熟练(核心是安装配置基本操作)目标:能够完成基本的LNMP系统安装,简单配置维护:能够用PHP源码做基本的简单系统的PHP开发:能够在PHP中 ...
- nRF52832 BLE_DFU空中升级OTA(二)编译下载(SDK14.2.0)
上一篇配置好了开发环境,现在就可以试着跑一下例程了,这里需要两个例程,一个是bootloader的,一个是应用程序的,其路径分别为: bootloader:SDK_14.2.0工程\examples\ ...
- 定时任务crond服务
crond 什么是? crond 是linux系统中用于定期执行命令或指定程序任务的服务.一般情况下,安装完系统操作之后,默认会启动任务调度服务. linux调度任务的工作可以分为两类: 系统自身执行 ...
- 【常用】IDEA常用快捷键与操作
以下出场顺序为开始学习IDEA时遇到的顺序,并非实际中的使用频率,最终版待整理 0.“ctrl+space(由于习惯问题我已经更改为alt+/)”——基本提示 “ctrl+shift+space”—— ...
- 20155330 2016-2017-2 《Java程序设计》第四周学习总结
20155330 2016-2017-2 <Java程序设计>第四周学习总结 教材学习内容总结 学习目标 理解封装.继承.多态的关系 理解抽象类与接口的区别 掌握S.O.L.I.D原则 了 ...
- 【转载】DXUT进阶
原文:DXUT进阶 概要 这个指南涵盖了更多DXUT的高级应用. 这个指南里的大部分功能是可选的, 为了以最小的代价来增强你的应用程序. DXUT提供了一个简单的基于GUI系统的精灵和一个设备设置对话 ...
- 那些不能遗忘的知识点回顾——C/C++系列(笔试面试高频题)
有那么一些零碎的小知识点,偶尔很迷惑,偶尔被忽略,偶然却发现它们很重要,这段时间正好在温习这些,就整理在这里,一起学习一起提高!后面还会继续补充. ——前言 1.面向对象的特性 封装.继承.多态. 封 ...
- VIN码识别/车架号识别独家支持云识别
VIN码(车架号)对于懂车的人来说并不陌生,不要小看这一串字符,从VIN码中可以读懂车辆的生产厂家.年代.车型.车身型式及代码.发动机代码及组装地点等信息. 一辆汽车的VIN码也是车辆的唯一身份证明, ...