前端技能
focus
打开网页focus到登录框中,使用的是当网页加载完成之后1
2document.getElementsByName('j_username')[0].focus()
或者直接使用byid
点击回车键登录
使用的是1
2
3
4$(document).keypress(function(e) {
if (e.which == 13)
$("form").submit();
});
异步提交form表单。页面不刷新
1 | <form action="" method="post" target="nm_iframe"> |
浏览器F12控制台中使用jQuery
1 | var jquery = document.createElement('script'); |
清空table中的除去第一行、最后一行和某一个特定的行之外的所有行
1 | $("#TABLE_DL_fd_36f49019295d7a tr:not(:first):not(:last):not(:eq(0))").html(""); |
使用jQuery监听div中内容变化
需求是这样的,我需要通过监听div中某一个内容是否发生变化来改变某一部分内容1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22//插入节点执行
$('div').bind('DOMNodeInserted',function(){
alert('插入了节点')
})
//去掉节点执行
$('div').bind('DOMNodeRemoved',function(){
alert('插入了节点')
})
```
## 数据库相关
### 多字段全表like模糊查询
```bash
最常见的写法:where a like '%xx%' or b like '%xx%' or c like '%xx%'; 这种写法查询效率低,经过>调查,下面的方法可以替代,并且效率高:
1、如果like的关键字相同:
where instr(nvl(a, '')||nvl(b,'')||nvl(c,''), 'xx') > 0
把要模糊查询的字段先拼接起来,拼接时需要把null转成‘’,否则只要有一个字段值是空,整个拼接的字符串
都成空了, 然后用instr 函数去过滤;
2、如果like的关键字不同:
where instr(a, 'xx') > 0 or instr(b, 'yy') > 0 or instr(c, 'zz') > 0
经过测试,这两种方法都比like效率要高;
后来按照上面的方式来写,发现报错了,Google之后发现上面是mysql和oracle数据库的函数,sql server>用不了,后来百度发现一个替代品的函数,不好用,弃之。遂直接用like,遍历列名,for循环拼接成一个sql,拿到列名用的是ResultSetMetaData metaData = rs.getMetaData();