常见分页步骤: Total: ? Page: ?/? Goto: ? |< < > >|
一、复制代码到指定的地方:
padding-right:5px;这个是为了右边留一点空而已。
样式
二、引入JS
<link href="/eClinic/include/pagination/pagination.css" rel="stylesheet" type="text/css" />
<script src="/eClinic/include/pagination/jquery.pagination.js" type="text/javascript"></script>
三、页面后置代码。
#region [ Page Load ]
protected void Page_Load(object sender, EventArgs e)
{
//Set Privilege
SetPrivilege();
string action = Request["action"];
if ("delete" == action)
{
int id = Convert.ToInt32(Request["id"]);
alertService.DeletePcip_AlertByAlertId(id);
}
if (!string.IsNullOrEmpty(Request["pageOp"]))
{
GetPaginationData();
}
}
private void GetPaginationData()
{
string data = "";
switch (Request["pageOp"])
{
case "getCount":
data = alertService.GetNotDeletedCount().ToString();
break;
case "getList":
int pageIndex = Convert.ToInt32(Request["pageIndex"]);
int pageSize = Convert.ToInt32(Request["pageSize"]);
DataTable dt = alertService.GetNotDeletedDataTableByPageSizeAndIndex(pageSize, pageIndex);
StringBuilder sb = new StringBuilder();
foreach (DataRow dr in dt.Rows)
{
sb.Append(string.Format(@"<tr style='height:25px;' οndblclick='edit({0})' class='{1}'>",
dr["alertId"], Convert.ToInt32(dr["Enabled"]) == 1 ? "showBGYellow" : "showBGRed"));
sb.Append(string.Format(@"<td><input οnclick='' type='radio' name='rdoId' value='{0}' /></td>",dr["alertId"]));
sb.Append(string.Format(@"<td>{0}</td>",dr["Name"]));
sb.Append(string.Format(@"<td>{0}Clinics({1});{2}",
dr["DMDesc"].ToString().Trim() == "" ? "" : "Adhoc Query(" + dr["DMDesc"].ToString() + ");",
dr["ClinicCount"],
dr["OSName"].ToString().Trim()==""?"":"OrderSet("+dr["OSName"].ToString()+")"));
sb.Append(string.Format(@"<td>{0}</td>", dr["Format"]));
sb.Append(string.Format(@"<td>{0}</td>", dr["Description"]));
sb.Append(string.Format(@"<td>{0}</td>", dr["Criteria"]));
sb.Append(string.Format(@"<td>{0}</td>", dr["AdminNotes"]));
sb.Append(string.Format(@"<td>{0}</td>", GetDeployment(dr["Status"])));
sb.Append(string.Format(@"<td nowrap='nowrap'>{0}</td>", dr["dateCreated"]));
sb.Append(string.Format(@"<td align='center'>{0}</td>",Convert.ToInt32(dr["Enabled"])==1?"<img src=/"/eClinic/ec/images/select_hcfa.gif/">":" "));
sb.Append("</tr>");
}
data = sb.ToString();
break;
}
Response.Write(data);
Response.End();
}
#endregion
四、ServiceImpl
#region 4.3.3 分页:得到所有未删除的Pcip_Alert的个数
public int GetNotDeletedCount()
{
string sql = "select count(*) from Pcip_Alert where deleted=0";
return DbFactory.executeScalarInt(sql);
}
#endregion
#region 4.3.4 分页:根据pageSize和pageIndex得到所有未删除的Pcip_Alert的DataTable
public DataTable GetNotDeletedDataTableByPageSizeAndIndex(int pageSize, int pageIndex)
{
string sql =string.Format(@"
SELECT TOP {0} pa.*
FROM Pcip_Alert pa
WHERE pa.[Deleted] = 0
AND pa.AlertId NOT IN (SELECT TOP {1} pa2.AlertId
FROM Pcip_Alert pa2 where pa2.[Deleted] = 0
ORDER BY
pa2.AlertId DESC)
ORDER BY
pa.alertId DESC", pageSize,pageSize*pageIndex);
return DbFactory.getDataTableBySql(sql);
}
#endregion