ajax动态数据排序

<tr>
	<th width="2%" class="checkTh">
	<input type="checkbox" class="allcheck" name="allbox"  value="ON">
        </th>
       	<th width="14%" id="order_id" class="sort">工单号<div></div></th>
	<th width="12%" id="ERR_DATETIME" class="sort">故障发生时间<div></div></th>
	<th width="8%" id="ORDER_TYPE_ID" class="sort">故障类型<div></div></th>
	<th width="10%">故障描述</th>
	<th width="7%" id="ERR_LEVEL_ID" class="sort">故障等级 <div></div></th>
	<th width="7%" id="ISSUE_ID" class="sort">问题等级 <div></div></th>
	<th width="7%" id="ORDER_STATE_ID" class="sort">工单状态 <div></div></th>
	<th width="41%" class="operate">操作</th>
</tr>





这里列表的一个表头.每个表头都包含一个ID,ID是需要排序的字段.给定一个Class名称

$("table th.sort").click(function(){	//table下class为sort的th标签绑定一个点击事件
	if($(this).hasClass("asc")){	//判断是升序还是降序
		$(".list table th.sort").removeClass("asc").removeClass("desc");  //将所有的class重置
		$(this).addClass("desc");  //添加class
		$("#orderSort").val($(this).attr("id")+" desc"); 将点击的th标签中的id赋值到ID为orderSort隐藏表单域中 ID是用于排序的字段
		var data = $("#orderForm").serialize(); //获得orderForm中的所有数据 格式化成: 我=1&你=2&他=3
		ajaxMutual(data); //调用ajaxMutual()方法将表单里面的数据传过去
	}else{
		$(".list table th.sort").removeClass("asc").removeClass("desc");
		$(this).addClass("asc");
		$("#orderSort").val($(this).attr("id")+" asc");
		var data = $("#orderForm").serialize();
		ajaxMutual(data);
	}
});
function ajaxMutual(data){
		$.ajax({
			type:"GET",
			url:"<%=basePath%>page/order_orderSortAjaxMutual?"+data,
			dataType: "json",
			success: function(json) {
		        var data = eval("("+json+")");
				addTable(data);
			} 
		});
	}

通过ajax从后台获取需要排序的数据

function addTable(data){
		$(".list table tbody").empty();
		for(var i=0;i<data.length;i++){
			var tr = $("<tr/>");
			tr.append("<td class='checkTh'><input class='checks' type='checkbox' value='"+data[i].ID+"' name='order.ids'></td>");
			if(data[i].ORDER_TYPE_ID=="4"){
				tr.append("<td><img title='人工报障' src='/oss/images/c.png'/> "+data[i].ORDER_ID+"</td>");
			}else if(data[i].ORDER_TYPE_ID=="1"){
				tr.append("<td><img title='RMS报障' src='/oss/images/r.png'/> "+data[i].ORDER_ID+"</td>");
			}else if(data[i].ORDER_TYPE_ID=="6"){
				tr.append("<td><img title='手机报障' src='/oss/images/m.png'/> "+data[i].ORDER_ID+"</td>");
			}
			tr.append("<td>"+data[i].ERR_DATETIME+"</td>");
			var errtype = {};
			var errlevel = {};
			var issuelevel = {};
			var orderstate = {};
			<c:forEach var="err" items="${publicMap.errType}">
			  baseText = "${err}";
			  aa = baseText.split("=");
			  errtype[aa[0]] = aa[1];
			</c:forEach>
			<c:forEach var="err" items="${publicMap.orderStateMap}">
			  baseText = "${err}";
			  aa = baseText.split("=");
			  orderstate[aa[0]] = aa[1];
			</c:forEach>
			<c:forEach var="err" items="${publicMap.errLevelMap}">
			  baseText = "${err}";
			  aa = baseText.split("=");
			  errlevel[aa[0]] = aa[1];
			</c:forEach>
			<c:forEach var="err" items="${publicMap.issueLevelMap}">
			  baseText = "${err}";
			  aa = baseText.split("=");
			  issuelevel[aa[0]] = aa[1];
			</c:forEach>
			if(errtype[data[i].ERR_TYPE_ID]!=""&&errtype[data[i].ERR_TYPE_ID]!=null){
				tr.append("<td>"+errtype[data[i].ERR_TYPE_ID]+"</td>");
			}else{
				tr.append("<td> </td>");
			}
			if(data[i].ERR_SYMPTOM!=""&&data[i].ERR_SYMPTOM!=null){
				if(data[i].ERR_SYMPTOM.length>6){
					tr.append("<td class='leftTd' title='"+data[i].ERR_SYMPTOM+"'>"+data[i].ERR_SYMPTOM.substring(0,6)+"</td>");
				}else{
					tr.append("<td class='leftTd' title='"+data[i].ERR_SYMPTOM+"'>"+data[i].ERR_SYMPTOM+"</td>");
				}
			}else{
				tr.append("<td> </td>");
			}
			if(errlevel[data[i].ERR_LEVEL_ID]!=""&&errlevel[data[i].ERR_LEVEL_ID]!=null){
				tr.append("<td>"+errlevel[data[i].ERR_LEVEL_ID]+"</td>");
			}else{
				tr.append("<td> </td>");
			}
			if(issuelevel[data[i].ISSUE_ID]!=""&&issuelevel[data[i].ISSUE_ID]!=null){
				tr.append("<td>"+issuelevel[data[i].ISSUE_ID]+"</td>");
			}else{
				tr.append("<td> </td>");
			}
			if(orderstate[data[i].ORDER_STATE_ID]!=""&&orderstate[data[i].ORDER_STATE_ID]!=null){
				tr.append("<td>"+orderstate[data[i].ORDER_STATE_ID]+"</td>");
			}else{
				tr.append("<td> </td>");
			}
			tr.append("<td><ul><li><a class='modify' href='<%=basePath%>page/order_queryOrderById?order.id="+data[i].ID+"&skip=0'>修改</a></li><li><a class='info' href='<%=basePath%>page/order_queryOrderById?order.id="+data[i].ID+"&skip=1'>工程师记录</a></li><li><a class='comment' href='<%=basePath%>page/order_queryOrderById?order.id="+data[i].ID+"&skip=2'>用户意见</a></li><li><a class='workflow' href='<%=basePath%>page/workflow_showDiagram?id="+data[i].ID+" rel='workflowDiagram'>工单流程</a></li><li><a class='print' href='<%=basePath%>page/order_queryOrderById?order.id="+data[i].ID+"&skip=3'>打印</a></li></ul></td>");		
			$(".list table tbody").append(tr);
		}
		$(".list table tbody tr:even").addClass("evenTr");
	}



如果有什么问题,请留言.





  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值