有时候前端进行表单填写是分步骤的,每一步的时候其他步骤相关的表单视图不可见;

针对"不可见",以下有两种处理方式:

①display:none

这种方式呢,比较简单,就是将三个步骤分3个div,事件触发相关视图的显示与隐藏;

②定位

这和轮播图的实现原理相同,三个步骤div作为行内块状元素,在一行排列,总宽度为width,并用一个大div包住,

称为wrapB;然后再在外面用wrapA包住;

wrapA(position:relative;overflow:hidden;)

wrapB(position:absolute;left:0px;)

然后点击事件,改变wrapB的left值(每次改变width/3)来实现步骤的切换。

对于两种方法的处理,我之前一直以为display:none之后,提交表单之后,对应的表单域获取不了值,因为

display:none了啊,今天项目上的一个问题,使得我回家做了一次实验来验证:到底display:none的表单域

能不能获取?

HTML:

<body>
<form id="form" action="http://localhost/index.php?c=api&m=demo" method="post">
<div class="none">
姓名:<input name="data[name]" type="text"></br>
年龄:<input name="data[age]" type="text"></br>
</div>
性别:<input name="data[gender]" type="text"></br>
学历:<input name = "data[education]" type="text"></br>
<button type="button" onclick="check()" style="width:6rem;height:2rem;">测试隐藏</button>
<button type="submit" style="width:6rem;height:2rem;">提交表单</button>
</form> <script>
function check(){
$(".none").hide();
var data = $("#form").serializeArray();
console.log(data);
}
</script>
</body>

前台页面:

点击隐藏:

接口代码:

public function demo(){
exit(json_encode($_POST['data']));
}

点击提交表单:

SO,事实证明,display:none后的表单域依旧可以传值,就和type="hidden"一样。

表单隐藏域与display:none的更多相关文章

  1. Servlet会话管理一(URL重写和表单隐藏域)

    会话可以简单的理解为客户端用户打开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器的整个过程称为一个会话.即一个客户端用户和服务器端进行通讯的过程,也是客户端和服务器端之间的数据传 ...

  2. jquery.validate 使用--验证表单隐藏域

    jQuery validate很不错的一个jQuery表单验证插件.升级到了1.9版的后,发现隐藏表单域验证全部失效,特别是在jquery.ui.tabs.min.js构造的Tabs里的验证. 是因为 ...

  3. jQuery validate验证隐藏表单(hidden)域

    validate很不错的一个jQuery表单验证插件.升级到了1.9版的后,发现隐藏表单域验证全部失效,特别是在jquery.ui.tabs.min.js构造的Tabs里的验证!网上一搜,也没查到是怎 ...

  4. 正则表达过滤表单隐藏元素,组装post数据

    <form name="form1" action="'.$serverUrl.'" method="post" > <i ...

  5. form 表单跨域提交

    <!DOCTYPE html><html> <head> <title>form 表单上传文件</title> <script src ...

  6. 常用js表单文本域验证

    1.验证是否为正确的邮箱地址 注意:本方法只能验证以@a.b结尾的邮箱地址,对于三级及三级以上的邮箱,比如@iie.ac.cn结尾的会出现错误 function isEmail(o){ var reg ...

  7. 获取表单select域的选择部分的文本

    body> <form action="index.php"> <select name="" id="select" ...

  8. 避免url传值字符串sjstr过长,使用from表单【隐藏域】post提交

    1.普通的url传值<html--------------- <!-- 隐藏域post提交url --> <form id="urlPost" action ...

  9. 12、Struts2表单重复提交

    什么是表单重复提交 表单的重复提交: 若刷新表单页面, 再提交表单不算重复提交. 在不刷新表单页面的前提下: 多次点击提交按钮 已经提交成功, 按 "回退" 之后, 再点击 &qu ...

随机推荐

  1. java内存解析

    ass BirthDate{ private int day; private int month; private int year; public BirthDate(int d;int m,in ...

  2. 一键安装lnmp(1)

    #!/bin/bash#author:zhaocl#Software directory:$pathpath=`pwd`cd $path. $path/cacti.sh. $path/nginx.sh ...

  3. mysql5.6备份

    备份之前: 最初的二进制信息: mysql> show master logs; +------------------+-----------+ | Log_name | File_size ...

  4. 索引原理-btree索引与hash索引的区别

    btree索引与hash索引的区别,之前不清楚,mark一下. Hash索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不像B-Tree索引需要从根节点到枝节点,最后才能访问到页节点这样多 ...

  5. 终极之shell-zsh全解析

    什么是Zsh Zsh是一款强大的虚拟终端,既是一个系统的虚拟终端,也可以作为一个脚本语言的交互解析器. Zsh的一些特性 兼容bash,原来使用bash的兄弟切换过来毫无压力. 强大的历史纪录功能,在 ...

  6. Jenkins 集成Maven打包SpringBoot项目并自动部署到Tomcat服务器

    提前条件: 1.在Jenkins服务器上安装Git.JDK和Maven 2.准备另一台服务器并安装Tomcat 3.Gitlab服务器 4.Gitlab仓库中上传SpringBoot项目代码 第一步, ...

  7. POJ-1458 LCS(线性动态规划)

    此题经典线性动态规划. 代码如下: #include<iostream> #include<cstdio> #include<cstdlib> #include&l ...

  8. Keepalived+Nginx实现高可用(HA)

    Keepalived+Nginx实现高可用(HA) service iptables stopchkconfig iptables offsetenforce 0/etc/selinux/config ...

  9. ideal开发工具环境设置

    ideal现在是很流行的一种java开发工具,不得不说,它真的很好用.当你使用的时候,需要设置环境. 首先,如果产生乱码,解决如下: 设置为UTF-8 如果项目是maven项目,设置如下: 也可以设置 ...

  10. python中的上下文管理器

    刚刚看了vamei大神的上下文管理器博客,理解如下: 其实我自己经常用到上下文管理器,尤其是在打开文件的时候,如果自己比较懒,不想手工打上f.close(),使用上下文管理器就ok拉. 上下文管理器就 ...