js常用方法收集

JS获取地址栏制定参数值:

//获取URL参数的值
function getUrlParam(name){
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r!=null) return unescape(r[2]); return null;
}

JS去除空字符:

String.prototype.trim=function()
{
return this.replace(/(^\s*)|(\s*$)/g,'');
}
var str=" test ";
alert("["+str+"]"); // [ test ]
alert("["+str.trim()+"]"); // [test]

JS字符串格式化:

/** 格式化输入字符串**/
//用法: "hello{0}".format('world');返回'hello world'
String.prototype.format= function(){
var args = arguments;
    if(this!=window)
    {
  return this.replace(/\{(\d+)\}/g,function(s,i){
  return args[i];
  });
    }
} var str = "hello{0}{1}".format('world','haha');
alert(str);

兼容IE火狐回车登录方法:

   function keydown(e) {
var e = e || event;
if (e.keyCode == 13) {
LoginUser();
return false;
}
}
document.onkeydown = keydown;

兼容所有浏览器,禁用回车方法:

<script>
$(document).keydown(function(e){
e =e?e:window.event;
var kcode = e.which?e.which:e.keyCode; 
var curKey = e.which;
if(curKey == 13){
return false;
}
});
</script>

JS常用刷新模式:

1.location.reload([bForceGet])  强迫浏览器刷新当前页面,bForceGet, 可选参数, 默认为 false,从客户端缓存里取当前页。true, 则以 GET 方式,从服务端取最新的页面, 相当于客户端点击 F5("刷新")

2.location.replace(URL)  通过指定URL替换当前缓存在历史里(客户端)的项目,因此当使用replace方法之后,你不能通过“前进”和“后退”来访问已经被替换的URL。当调用 location.reload() 方法时, aspx页面此时在服务端内存里已经存在, 因此必定是 IsPostback 的。
如果有这种应用: 需要重新加载该页面,也就是说期望页面能够在服务端重新被创建,期望是 Not IsPostback 的。
这里,location.replace() 就可以完成此任务。被replace的页面每次都在服务端重新生成。
代码: location.replace(location.href);

3.location.replace(document.referrer);返回上一个页面并刷新它

上一篇:fsockopen/curl/file_get_contents效率比较


下一篇:分布式系统下的全局id生成策略分析