js分页函数动态加载url

来源:互联网 发布:富善投资知乎 编辑:程序博客网 时间:2024/06/06 20:00

 最近公司的后台管理系统基本每个页面都需要使用分页,考虑到代码的复用性,将分页函数提取出来。

这里只针对页面中id以param_开头的标签元素。写的有点啰嗦了。

由于window.location.href是获取的地址栏整个url,location.href获取的是地址栏?以及?以后的参数。

function goToPage(page){var url = window.location.href;var paramUrl = location.search;if(paramUrl.indexOf("?") > -1){paramUrl = paramUrl.replace(paramUrl,"");}//事先加上?,方便后面添加&符号拼接参数url='?' + paramUrl ;var urlStr = 'pageIndex=' + page;//得到页面所有id以param_开头的表单标签var array = $("[id^='param_']");jQuery.each(array, function(index, value){//urlStr += 'pageIndex=' + page ;var idStr = value.id;//由于id以param_开头,以_拆分,得到后面的字符串var idArray = idStr.split("_");var name = idArray[1];//得到页面输入的数值var inputValue = $("#"+value.id).val();//拼接urlurlStr += "&" + name + "=" + inputValue;});url += urlStr;window.location.href = url;return url;}

var paramUrl = location.search;
if(paramUrl.indexOf("?") > -1){
paramUrl = paramUrl.replace(paramUrl,"");
}
//事先加上?,方便后面添加&符号拼接参数
url='?' + paramUrl ;

一定要加上这个判断,如果存在了查询参数就应该置空,避免地址栏参数一直追加。就类似这种一直追加:

http://localhost:8080/management-mail/datas/cdKeyUsage/index?pageIndex=0&cdkeyCode=&start=2017-10-01%2000:00&end=2017-10-30?pageIndex=1&cdkeyCode=&start=2017-10-01%2000:00&end=2017-10-30