开发工具与关键技术:VS、
作者:#33
撰写时间:撰写时间:2019年07月17日
一个文本框查询一个字段的方法太麻烦,做项目中遇到的一个文本框查询多个表多个字段的功能。如下面的仓库表和发货表内容的查询:查询仓库名称、编号、备注、联系人、电话

查询结果:

控制器查询方法:传参(WarehouseName),通过参数得到的值进行模糊查询
再加上条件语句(下面红色框)用“||”分开要查询的字段。
|
public ActionResult SelectWarehouseInfor(LayuiTablePage layuiTablePage, string WarehouseName) { var listWarehouse = (from tbWarehouse in myModel.S_Warehouse join tbSendOutGoods in myModel.D_SendOutGoods on tbWarehouse.SendOutGoodsID equals tbSendOutGoods.SendOutGoodsID select new WarehouseInfor{ WarehouseID = tbWarehouse.WarehouseID, WarehouseName = tbWarehouse.WarehouseName, WarehouseNum = tbWarehouse.WarehouseNum, WarehouseState = tbWarehouse.WarehouseState, WarehouseDefaultStatus=tbWarehouse.WarehouseDefaultStatus, Remark = tbWarehouse.Remark, SendOutGoodsID = tbWarehouse.SendOutGoodsID, Contacts = tbSendOutGoods.Contacts, ContactPhone = tbSendOutGoods.ContactPhone, Mailbox = tbSendOutGoods.Mailbox, ZipCode = tbSendOutGoods.ZipCode, ContactAddress = tbSendOutGoods.ContactAddress, }).ToList(); if (WarehouseID > 0) { listWarehouse = listWarehouse.Where(m => m.WarehouseID == WarehouseID).ToList();} if (SendOutGoodsID > 0) { listWarehouse = listWarehouse.Where(m => m.SendOutGoodsID==SendOutGoodsID).ToList();}
int totalRows = listWarehouse.Count();//总条数 List<WarehouseInfor> list = listWarehouse.OrderBy(m => m.WarehouseID) .Skip(layuiTablePage.GetStartIndex()).Take(layuiTablePage.limit).ToList(); LayuiTableData<WarehouseInfor> layuiTableData = new LayuiTableData<WarehouseInfor>(); layuiTableData.count = totalRows; layuiTableData.data = list; return Json(layuiTableData, JsonRequestBehavior.AllowGet); } |
视图中的代码:分别声明查询的字段对象获取输入框接收的值进行查询。
|
function tabWarehouseSearch() { var WarehouseNum = $("#Warehousesearch").val().trim(); if (WarehouseName == null || WarehouseName == undefined ) { WarehouseName == ""; } tabWarehouse = layuiTable.reload("tabWarehouse", { url: "/Sales_Process/DataBase/SelectWarehouseInfor",page: { curr: 1 }, where: { WarehouseName: WarehouseName.trim(), } });} //回车键搜索 $('body').bind('keypress', function (e) { if (e.keyCode == "13") { $("#WarehouseSearchid").click();}}) |
本文介绍了在项目开发中如何实现一个文本框查询多个表和字段的方法,涉及到仓库表和发货表的仓库名称、编号、备注、联系人、电话等字段的模糊查询。在控制器中使用传入的参数进行条件判断,并在视图中设置查询代码,通过“||”连接不同字段的查询条件。
6344

被折叠的 条评论
为什么被折叠?



