$(function(){
(function($, document, undefiend){
$.fn.pagination = function(options){
var $this = $(this);
var defaults = {
pageNo : 1,
pageSize : 50,
totalPages : 1,
totalRecords : 1,
goToPage : $.noop
} var _opt = $.extend({}, defaults, options);
var totalRecordHtml = ' <span class="num">共'+_opt.totalRecords+'条记录</span>'; var btnDivHtml = '<div class="pageBtn">'
+'<span class="pageNum pageNo">第<input type="text" value="'+_opt.pageNo+'" class="input_page"/>页</span>'
+'<span class="allpage">共'+_opt.totalPages+'页</span><span>每页'+_opt.pageSize+'条</span><span class="goBtn">go</span>'
+'</div>'; $this.empty()
.append(totalRecordHtml).append(btnDivHtml); var goBtn = $this.find('.goBtn'); $this.on('keyup','.pageNo',function(e){
if(e.keyCode == 13){//回车
goBtn.click();
}
}) goBtn.on('click',function(){
var pageNoInput = $this.find('.pageNo').find('input');
var _pageNo = pageNoInput.val();
if(!isNaN(_pageNo)){
var pageNo = parseInt(_pageNo);
if(0<pageNo && pageNo<=_opt.totalPages){
_opt.goToPage(pageNo);
return;
}
}
pageNoInput.val(_opt.pageNo);
}); }
})($, document); }) $(function(){
new PriceMonitor(); })
function PriceMonitor(){
this.initialize();
this.loadData(this.province_id,this.month,1);
this.getUrlArgument(name);
this.serchBox();
} PriceMonitor.prototype={
initialize:function(){
this.checkBox = $(".selectBox");
this.select_cor = $(this.checkBox).find("#select_area");
this.month_input = $(this.checkBox).find("#cycleMonth");
this.select_input =$(this.select_cor).find("#provinceId");
this.select_hide_box =$(this.select_cor).find(".hide_select_box2");
this.select_li =$(this.select_cor).find(".select_demo").children("li");
this.serachBtn = $(this.checkBox).find(".refreshBtn");
this.download_btn = $(".download_pc");
//创建表格
this.table = $(".priceMonitor");
this.headName = $('<table class="tableHead"><tr></tr></table>');
this.dataWrap = $('<div class="tableList"></div>');
this.tableList =$('<table></table>');
//获取url参数
this.province_id =this.getUrlArgument("groupprovince");
this.month = '';
this.pageSize = 20; },
serchBox:function(){
var own = this;
//点击省下拉效果
$(own.select_input).click(function(){
if($(own.select_hide_box).is(":hidden")){
$(own.select_hide_box).slideDown();
}else{
$(own.select_hide_box).slideUp();
}
});
//选择省份 $(own.select_li).hover(function(){
$(this).addClass("on").siblings().removeClass("on");
}).click(function(){
var text = $(this).text();
var val = $(this).data("tree-id");
$(own.select_input).val(text);
$(own.select_input).attr("data-id",val);
$(this).addClass("on").siblings().removeClass("on");
$(own.select_hide_box).slideUp();
});
//搜索按钮
$(own.serachBtn).click(function(e,data){
var pageNo = 1;
if(data && data.pageNo){
pageNo = data.pageNo;
}
var time_val = $("#cycleMonth").val();
var pro_id ="";
if($(own.select_cor).is(":hidden")){
pro_id = own.province_id;
}else{
pro_id = $(own.select_input).attr("data-id");
}
if(time_val==""||time_val==undefined){
alert("请选择时间!")
}else{
own.loadData(pro_id,time_val,pageNo);
}
});
//下载按钮
$(own.download_btn).click(function(){
var month = $(own.month_input).val();
var pro_id ="";
if($(own.select_cor).is(":hidden")){
pro_id = own.province_id;
}else{
pro_id = $(own.select_input).attr("data-id");
}
$(this).attr('href',contextPath+'/downPriceMonitor?province='+pro_id+'&month='+month) }); }, loadData:function(pro,month,pageNo){
var own = this;
var the_url = contextPath+'/getPriceMonitor?province='+pro+'&month='+month+'&pageSize='+own.pageSize+'&pageNo='+pageNo;
if(own.province_id==10){
$(own.select_cor).show();
}else{
$(own.select_cor).hide();
}
$.ajax({
url:the_url,
type:'GET',
dataType:'json',
beforeSend:function(){
$(own.table).empty()
.append('<div class="loading"><img src="/resources/images/loading.gif" /></div>');
},
success:function(data){
$(own.table).empty();
var json = $.parseJSON(data);
if(json.code==0){
own.initInfo(json.data);
own.page(json.data.page);
}else{
$(".priceMonitor").empty().append('<div class="fail">数据加载失败,请稍后再试!</div>');
} },
error:function(){
$(".priceMonitor").empty().append('<div class="fail">服务器繁忙,请稍后再试!</div>'); }
})
}, initInfo:function(jsonData){
var own = this;
$(own.month_input).val(jsonData.month);
$(own.table).empty();
$(own.table).append($(this.headName),$(own.dataWrap).append(own.tableList));
var head = jsonData.headers;
/*表头*/
$(own.headName).find('tr').empty();
var i = 0;
for(var vv in head){
var width;
var val = head[vv];
if(i==0){
width = 120
}else if(i==1){
width = 280
}else{
width = 90;
}
$(this.headName).find('tr').append('<th width="'+width+'">'+val+'</th>');
i++;
}
/*表格数据列表*/
var listData = jsonData.page.list;
$(own.tableList).empty();
for(var k=0; k<listData.length;k++){
if(k%2==0){
var $tr = $('<tr class="odd"></tr>');
}else{
var $tr = $("<tr></tr>");
}
$(own.tableList).append($tr);
var row_val = listData[k];
var j=0;
for(var v in row_val){
var td_width = $(own.headName).find('th:eq('+j+')').width();
span_val = row_val[v];
$tr.append('<td width="'+td_width+'">'+span_val+'</td>');
j++;
}
} },
page:function(option){
var own = this; $('.paginator').pagination({
pageNo : option.pageNo,
pageSize : own.pageSize,
totalPages : option.totalPages,
totalRecords : option.totalRecords, goToPage : function(pageNo){
$(own.serachBtn).trigger('click',{pageNo:pageNo});
}
})
},
getUrlArgument : function(name){
var search = document.location.search;
var pattern = new RegExp("[?&]"+name+"=([^&]+)");
var matcher = pattern.exec(search);
var items = null;
if(null != matcher){
try{
items = decodeURIComponent(decodeURIComponent(matcher[1])); }catch(e){
try{
items = decodeURIComponent(matcher[1]);
}catch(e){
items = matcher[1];
}
}
}
return items;
}
}

  

最新文章

  1. nginx 启动、重启、关闭
  2. Howto: Connect MySQL server using C program API under Linux or UNIX
  3. C#禁止程序重复启动
  4. CoreLocation框架的使用---地理编码
  5. wrk中的lua脚本(转)
  6. SQL语句方法语法总结(三)
  7. LINQ To SQL在N层应用程序中的CUD操作、批量删除、批量更新
  8. loadView 再思考
  9. Jquery实现两级联动
  10. Java四种引用--《深入理解Java虚拟机》学习笔记及个人理解(四)
  11. Postman接口自动化测试实例二
  12. 极其简单的VSCode C++环境配置
  13. java web从入门到精通
  14. [转]python3之模块psutil系统性能信息
  15. PUTTY工具的使用
  16. golang学习笔记16 beego orm 数据库操作
  17. 《大话处理器》Cache一致性协议之MESI (转)
  18. 利用Chrome的Heap Snapshot功能分析一个时间段内的内存占用率
  19. 看板与Scrum:哪个更适合你的团队?
  20. Golang文件名命名规则

热门文章

  1. python-rtslib 模块
  2. 003为什么shell的配置文件那么繁琐?
  3. 牛客网 牛客小白月赛2 G.文
  4. Java编程风格学习(一)
  5. Codeforces Round #467 (Div. 2) A. Olympiad[输入一组数,求该数列合法的子集个数]
  6. POJ2546 Circular Area(计算几何)
  7. NOI模拟题4 Problem B: 小狐狸(fox)
  8. Linux下不重启永久修改hostname
  9. mongodb分片片键的选择(持续更新中)
  10. java 中 instanceof 和 isInstance区别