文档章节

jquery里面的attr和prop方法的区别

张超群的web之路
 张超群的web之路
发布于 2016/10/15 18:17
字数 1001
阅读 22
收藏 0

表单交互是我认为最恶心的地方~最近公司要做一个校园行的表单用来收集学生信息。一开始以为表单需要收集的字段是写死在页面里面的比如收集学生的,姓名,性别,年龄,爱好等。没想到开会的时候根据市场部的需求,表单要做成“活”的。后台可以灵活配置

1.页面里面input[type="text"]的比如姓名,家庭,地址,专业等,这些text文本输入框的个数和name值都是灵活多变的。

2.页面里面的input[type="radio"]和input[type="checkbox"]的个数都是不固定的。

3.每个字段的必填与否都是后台可配置的

4.每个字段的最大长度和最小长度后台都是可配置的

5.有些字段的正则还需要验证比如常见的手机邮箱

6.根据错误信息的不同还要提示不同的错误信息,必输项,最大长度,最小长度,正则校验等。

7.最后还要实现一个哪里错了,就要定位到哪里,还要是出现错误的文本框里面获得焦点。

8.这个表单页面只能通过微信扫码登陆进入和官网还有数据交互。安卓微信他妈的缓存又恶心的清楚不掉,再加上公司网络环境有问题,一会在内网一会在外网。测试一直通不过还被老大各种嫌弃。心情真是糟透了。

9.这仅仅是我能描述清楚的一部分,这个表单的复杂程度,包括渲染数据,客户端校验,提交表单,页面特效。是我做过的最复杂的一个表单了,真是恶心至极。主要是自己经验不足,能力偏弱的原因。我得上传一张图片来纪念下这个恶心的表单。

  • jquery atter 和prop的区别(关于两者的区别,网上的都是大同小异,这里就不重复了,只是告诉自己要避免这些坑。这是我找到解释的比较好的,当然jquery 手册里面也有例子,只是解释的不是很清楚而已)

         第一:脚本之家 http://www.jb51.net/article/62308.htm

         第二:百度知道 http://zhidao.baidu.com/link?url=iBBZtANsEB4hQdd_RQeVPYJL_JNdFJDnCQ9QtpWgjlocaQEn3pIzQKOeMT1N5jnFx7aMwWFEo18RRkwzdSXLtGpPuk5uqSMnWDbVOif8LRC

  • ajax表单提交我们常见的都是post请求去往url后面追加参数a=1&b=2,通过表单序列化
    $("form").serialize()
    可以帮我们快速的做这件事,不用我们手动的去拼。当然这是建立在传递的时候不需要其他变量的时候。这次没有这么简单,这次提交到后台的url串后面是这样的一个json字符串:'{"name":"lz","level":"high","age":25,"another":{"school":"qh"},"perplex":[{"ni":"wb"},{"ta":"zhuang"}]}'。我去,我还要各种循环,里面套循环的去往这个json里面去动态的添加属性。首先是外面这个大的{},里面包的属性名字为another的字段(注意这个字段是个对象)又可以是多个,同理属性名字为perplex的字段(数组里面套对象)又可以是多个当然需要循环,推荐用$.each()和$().each()。我们渲染的时候都是从后台拿这种数据结构,要什么拿什么,现在反过来给后台计较这种结构的json串,就动态的添加属性,没啥。问题是添加完后是个object typeof的结果。后台说它要的是json字符串不要对象。这怎么办,不知道的原因是因为不知道有JSON.stringify(参数)这个方法,原生js封装ajax的时候对后台返回的json串我们要解析成对象才能用JSON.Parse(),现在反过来了,用JSON.stringify(参数)这个方法去转换。   
  • http://www.cnblogs.com/ningvsban/p/3660654.html(这篇文章讲的是JSON.stringify())的用法。   

 

© 著作权归作者所有

张超群的web之路
粉丝 0
博文 19
码字总数 10546
作品 0
丰台
程序员
私信 提问
jQuery中attr和prop方法的区别

相比attr,prop是1.6.1才新出来的,两者从中文意思理解,都是获取/设置属性的方法(attributes和properties)。只是,window或document中使用.attr()方法在jQuery1.6之前不能正常运行,因为w...

_World
2015/01/18
147
0
jquery中attr和prop的区别

jquery中attr和prop的区别 在高版本的jquery引入prop方法后,什么时候该用prop?什么时候用attr?它们两个之间有什么区别?这些问题就出现了。 关于它们两个的区别,网上的答案很多。这里谈谈...

别人说我名字很长
2015/03/15
218
2
jquery版本间兼容性:checkbox选中状态

最近在学习Jquery,发现attr不太好用,从网上搜了下终于知道其原因,记下备查。 以下为以为网友在js贴吧的内容: 以<input type="checkbox" id="all"/>为例子取值的例子 $("#all").attr("ch......

北方攻城师
2014/08/05
257
0
奇葩问题——jquery操作checkbox的 checked属性

最近做checkbox,遇到一个奇葩问题,如下: <!DOCTYPE html><html><head><meta charset="UTF-8"><title>Insert title here</title><script type="text/javascript" src="jquery-1.9.1.js"></......

seth_y
2014/04/16
68
0
jQuery 1.6 正式版发布

jQuery 1.6 正式版发布了,重写了 Attribute 模块和大量的性能改进。 新版本中的部分重要改进: attr()、val()和data()方法有了更好的性能; 在attr()方法中支持Boolean属性; 添加了钩子函数...

红薯
2011/05/03
8.9K
27

没有更多内容

加载失败,请刷新页面

加载更多

OpenStack 简介和几种安装方式总结

OpenStack :是一个由NASA和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目。项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。OpenSta...

小海bug
昨天
5
0
DDD(五)

1、引言 之前学习了解了DDD中实体这一概念,那么接下来需要了解的就是值对象、唯一标识。值对象,值就是数字1、2、3,字符串“1”,“2”,“3”,值时对象的特征,对象是一个事物的具体描述...

MrYuZixian
昨天
6
0
数据库中间件MyCat

什么是MyCat? 查看官网的介绍是这样说的 一个彻底开源的,面向企业应用开发的大数据库集群 支持事务、ACID、可以替代MySQL的加强版数据库 一个可以视为MySQL集群的企业级数据库,用来替代昂贵...

沉浮_
昨天
6
0
解决Mac下VSCode打开zsh乱码

1.乱码问题 iTerm2终端使用Zsh,并且配置Zsh主题,该主题主题需要安装字体来支持箭头效果,在iTerm2中设置这个字体,但是VSCode里这个箭头还是显示乱码。 iTerm2展示如下: VSCode展示如下: 2...

HelloDeveloper
昨天
7
0
常用物流快递单号查询接口种类及对接方法

目前快递查询接口有两种方式可以对接,一是和顺丰、圆通、中通、天天、韵达、德邦这些快递公司一一对接接口,二是和快递鸟这样第三方集成接口一次性对接多家常用快递。第一种耗费时间长,但是...

程序的小猿
昨天
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部