主要步骤如下
1.easy-ui布局布局
<div>
用户名:<input type="text" class="easyui-textbox" id="txtSchName" name="txtSchName"/>
备注:<input type="text" class="easyui-textbox" id="txtSchRemark" name="txtSchRemark"/>
<a class="easyui-linkbutton" data-options="iconCls:'icon-search'" id="btnSearch" >搜索</a>
<br /> <br />
</div>
2.绑定事件
function bindSearchBtnClick()
{
$('#btnSearch').click(function () {
var data = { schName: $('#txtSchName').val(), schRemark: $('#txtSchRemark').val() };
initTable(data);
});
}
3.后台处理
1)添加参数Model
//父类
public class BaseParam
{
public int PageSize { set; get; }
public int PageIndex { set; get; }
public int Total { set; get; }
}
//子类
public class UserQueryParam : BaseParam
{
//search -->Sch
public string SchName { set; get; }
public string SchRemark { set; get; }
}
2)在IBLL层接口层添加方法
public partial interface IUserInfoService : IBaseService<UserInfo>
{
IQueryable<UserInfo> LoadPageData(Model.Param.UserQueryParam userQueryParam);
}
在BLL层添加实现
public partial class UserInfoServices : BaseService<UserInfo>, LTeasyOA.IBLL.IUserInfoService
{
public IQueryable<UserInfo> LoadPageData(LTeasyOA.Model.Param.UserQueryParam userQueryParam)
{
short normalFlag = (short)LTeasyOA.Model.Enum.DelFlagEnum.Normal;
var temp = CurrentDal.GetEntities(c => c.DelFlag == normalFlag);
if (!string.IsNullOrEmpty(userQueryParam.SchName))
{
temp = temp.Where(u => u.UName.Contains(userQueryParam.SchName)).AsQueryable();
}
if (!string.IsNullOrEmpty(userQueryParam.SchRemark))
{
temp = temp.Where(u => u.Remark.Contains(userQueryParam.SchRemark)).AsQueryable();
}
userQueryParam.Total = temp.Count();
//分页
return temp.OrderBy(c => c.ID).Skip(userQueryParam.PageSize * (userQueryParam.PageIndex - 1)).Take(userQueryParam.PageSize).AsQueryable();
#endregion
Controll控制器中添加具体实现
public ActionResult GetAllUserInfos()
{
int pageSize = int.Parse(Request["rows"] ?? "10");
int pageIndex = int.Parse(Request["page"] ?? "1");
string schName = Request["schName"];
string schRemark = Request["schRemark"];
int total = 0;
var queryParam = new UserQueryParam() {
PageSize=pageSize,
PageIndex=pageIndex,
Total=total,
SchName=schName,
SchRemark=schRemark
};
var pageData = UserInfoService.LoadPageData(queryParam);
var temp = pageData.Select(c => new {
c.ID,
c.UName,
c.Remark,
c.ShowName,
c.SubTime,
c.ModifiedOn,
c.Pwd
});
var data = new { total = total, rows = temp.ToList() };
return Json(data, JsonRequestBehavior.AllowGet);
}