-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
开发工具与关键技术:vs· jQuery基础
作者: xqll
撰写时间:2019/7/17
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
唔,做项目的时候有个问题困扰了我一小会,就是有一堆属性名 然后属性名后面有各自的属性值
属性名可以随意修改、然后属性名后面的属性值也可以新增修改删除什么的
然后我解决的方法是 属性名给它一个数据表格、然后属性值再给它一个数据表格
然后通过属性名表里面的属性名可以获取对应的属性值
唔,大概的样子是
然后通过点击它的详情按钮可以获取它的属性值
比如说 我点击品牌的详情 然后对应的 就会出现品牌的属性值
如果我点击了其他属性名的详情信息 就会出现其他属性名中该属性名的值
然后 怎么实现的呢
先查出 属性名的数据
public ActionResult LargePropert(LayuiTablePage layuiTablePage)
{
var Apro = (from tb in myModels.S_Attribute
select new AttributeVo
{
AttributeID = tb.AttributeID,
AttributeName = tb.AttributeName
}).ToList();
var intTotalRow = Apro.Count();
List<AttributeVo> list = Apro
.Skip(layuiTablePage.GetStartIndex())
.Take(layuiTablePage.limit)
.ToList();
//分页
LayuiTableData<AttributeVo> layuiTableData = new LayuiTableData<AttributeVo>(); ;
layuiTableData.data = list;//具体显示数据
return Json(layuiTableData, JsonRequestBehavior.AllowGet);
}
查询属性值的控制器代码
public ActionResult AbilityY(LayuiTablePage layuiTablePage,int AttributeID)
{
var AbY = (from tbA in myModels.S_Ability
where tbA.AttributeID == AttributeID
orderby tbA.AbilityID descending
select new AbilityVo
{
AttributeID = tbA.AttributeID,
AbilityID = tbA.AbilityID,
AbilityName = tbA.AbilityName
}).ToList();
var intTotalRow = AbY.Count();
List<AbilityVo> list = AbY
.Skip(layuiTablePage.GetStartIndex())
.Take(layuiTablePage.limit)
.ToList();
//分页
LayuiTableData<AbilityVo> layuiTableData = new LayuiTableData<AbilityVo>(); ;
layuiTableData.count = intTotalRow;//行总数
layuiTableData.data = list;//具体显示数据
return Json(layuiTableData, JsonRequestBehavior.AllowGet);
}
然后是表格渲染
表格渲染我就不写了
给它一个自定义列
function setOperate(data) {
var AttributeID = data.AttributeID;
var btns = "";
btns += '<button type="button" class="layui-btn layui-btn-xs"
onclick=detai(' + AttributeID + ')>详情</button>';
return btns;
}
把ID给到按钮里面
然后通过点击 详情按钮 获取到它的ID
然后找到对应的属性值
然后 想要的效果就出现了
//点击详情
function detai(AttributeID) {
console.log(AttributeID);
tabClient = layuiTable.reload("abil",
{
url: "AbilityY",
page: {
curr: 1 //重新从第1页开始
},
where: {
AttributeID: AttributeID
}
});
}