html jquery 开发小技巧
来源:互联网 发布:西方教父教母地位知乎 编辑:程序博客网 时间:2024/06/07 01:51
1.善用 data-property ( property 可写成任意类型 )
eg. 当我们需要根据不同类型展示相应内容时:
-----------------------html-----------------------------
<input type="button" data-type="1"/>
<input type="button" data-type="2"/>
-------------------------js---------------------------
$('input[type="button"]').click(function(){
//取值方法
$(this).data('type');
//赋值方法
$(this).attr('data-type',‘3’);
});
2.活用Object + JSON.Stringify;
其实很多时候前台页面提交可能涉及大量的内容需要提交,当然你也可以用隐藏标签(<input type="hidden" />) ,给一堆隐藏标签赋值,任务量大而繁琐。其实完全可以不建一大堆标签,说一个简单的例子:
一道题目至少包含4个选项,其中有个是正确答案;
因此我们的后台至少有三张表:题目表,选项表,题目选项关系表,
此时若是新增可能很简单,组织一下内容,提交即可;
但是若是修改则特别麻烦,因为这其中至少包含5个主键,
所以此时后台可下发整个实体(包括题目和选项以及正确答案),前台修改后将对象对应的属性修改,最后将对象转成JSON串提交即可(encodeURI(JSON.stringify(exerciseEntity)),解决乱码),这样后台可用GSON直接解析转成对象,前台代码清晰,后台处理简单!
3.jquery 强大的标签选择功能
例如 给 name 为 X的 radio 设置 选中
$('input[type="radio"][name="'+X+'"]').attr('checked',true);
假如有大量的<input>标签,且有类似的属性,遍历一遍即可全部赋值;
注意:使用标签选择器,赋值可能出现问题,因为选中的有可能是一堆标签,返回的是一个数组,若确定只用一个可用$('#ID')[0]。
4.先解除绑定再绑定事件
$('#id').unbind("click").click(function(){});
5.注意执行方法的时间,异步
例如,jquery提供一个load方法
$('#bd_header').load('header.html',function(data){
$(this).html(data);
init();
});
load是异步的,所以如果你要是在$().ready()中,绑定要加载的页面的点击之类的标签很可能绑定不上,所以需要load执行完执行操作。
同理:ajax;
6.js中添加js文件
document.write('<script type="text/javascript" src="js/Util.js"></script>');
7.判断是否为空或者undefined;
只需要 :
if(obj){
alert(JSON.stringify(obj))
}
8.prop 替换 attr
有时attr无法赋值,试试prop
- html jquery 开发小技巧
- css,html,js/jQuery开发小技巧汇总-更新中~
- 【HTML】html 小技巧
- HTML中的小技巧
- HTML小技巧
- html、javascript小技巧
- HTML小技巧
- HTML小技巧
- web html小技巧
- HTML小技巧
- html 小技巧
- html常用小技巧
- html中的小技巧
- html小技巧
- html实用小技巧
- HTML一些小技巧
- Html JS 小技巧
- html 小技巧
- java学习之System类
- Swift中的集合类数据结构
- leetcode: H-Index
- max-min fairness 最大最小公平算法
- C# winform: 初始化ListView
- html jquery 开发小技巧
- Differences between ArrayList and Vector
- iptables-rules
- Ubuntu安装软件时出现错误:Reading package lists... Error!
- Linux下解决命令未找到的问题
- sizeof与strlen
- 解读x86、ARM和MIPS三种主流芯片架构
- 美团网2015秋季校园招聘面试题(上)
- Linux MTD层次