C# 对HTML表格单元格重新排序
我有一个ASP.NET页面,其中显示一个表,其中每个单元格表示一个对象。这个对象是由C#中的代码生成的,通过JSON发送到页面,Javascript函数读取每个对象并生成一个HTML单元格,显示其中对象的属性 我为每个案例定义了行和列数量。例如,如果我的对象总数为20,则列数为4,行数为5 每个对象都有一个数字标识符,从1到20,如示例所示。对象在表格上从左到右逐行填充,形成如下网格: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 18 20 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 18 20 对象具有以下结构: public class AreaData { public string AreaId; public int Rows; public int Columns; public int TotalCells; public bool Orientation; public List Cells; } public class CellData { public string CellName; public int CellNumber; } 公共类区域数据 { 公共字符串区域ID; 公共int行; 公共int列; 公共细胞; 公共利益导向; 公共列表单元格; } 公共类单元数据 { 公共字符串CellName; 公共电话号码; } 构成表格的Javascript函数的基本轮廓如下:C# 对HTML表格单元格重新排序,c#,javascript,jquery,asp.net,json,C#,Javascript,Jquery,Asp.net,Json,我有一个ASP.NET页面,其中显示一个表,其中每个单元格表示一个对象。这个对象是由C#中的代码生成的,通过JSON发送到页面,Javascript函数读取每个对象并生成一个HTML单元格,显示其中对象的属性 我为每个案例定义了行和列数量。例如,如果我的对象总数为20,则列数为4,行数为5 每个对象都有一个数字标识符,从1到20,如示例所示。对象在表格上从左到右逐行填充,形成如下网格: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
function ReturnGrid(object, settings) {
var objId = settings["objId"];
var objName = settings["objName"];
if ((settings["columns"] * settings["rows"]) == object[objName].length) {
var table = CreateFullElement("table", "id", "Table" + object[objId], "class", settings["styles"]["table_css"], "style", settings["styles"]["table_style"]);
var tableBody = document.createElement("tbody");
var index = 0;
for (var j = 0; j < settings["rows"]; j++) {
var tableRow = document.createElement("tr");
for (var i = 0; i < settings["columns"]; i++) {
var tableCell = CreateFullElement("td", "id", "CellName-" + object[objName][index]["CellName"], "title", object[objName][index]["CellName"], "style", settings["styles"]["td_style"]);
object[objName][index]["ServiceTag"] = object[objName][index]["ServiceTag"].toUpperCase();
var cellContainer;
cellContainer = CreateFullElement("div", "id", object[objName][index]["CellName"], "class", settings["classes"]["cellContent_css"], "style", cellContent_style + "background-color:" + settings["deviceStatusColors"][object[objName][index]["DeviceStatus"]]+";");
var cellNumText = document.createTextNode(object[objName][index]["CellNumber"]);
cellNumContainer = CreateFullElement("div", "class", settings["classes"]["cellNumContent_css"], "style", cellNumContent_style + textcolor_Style);
cellNumContainer.appendChild(cellNumText);
tableCell.appendChild(cellContainer);
tableRow.appendChild(tableCell);
index++;
}
tableBody.appendChild(tableRow);
}
table.appendChild(tableBody);
return table;
}
else {
console.log("The values of rows and columns does not match with the length of the object");
}
}
函数返回网格(对象、设置){
var objId=设置[“objId”];
var objName=设置[“objName”];
if((设置[“列”]*设置[“行”])==object[objName].length){
var table=CreateFullElement(“表格”、“id”、“表格”+对象[objId]、“类”、设置[“样式”][“表格样式”]、“样式”、设置[“样式”][“表格样式”]);
var tableBody=document.createElement(“tbody”);
var指数=0;
对于(var j=0;j
但是,我想根据两个条件重新排列该网格:
1) 从上到下填充网格
1 6 11 16
2 7 12 17
3 8 13 18
4 9 14 19
5 10 15 20
1 6 11 16
2 7 12 17
3 8 13 18
4 9 14 19
5 10 15 20
2) 如果需要,将网格作为镜像填充
16 11 6 1
17 12 7 2
18 13 8 3
19 14 9 4
20 15 10 5
16 11 6 1
17 12 7 2
18 13 8 3
19 14 9 4
20 15 10 5
有没有办法用Javascript实现这个功能,Jquery已经实现了这个功能?或者我必须在将对象字符串化为JSON之前对其进行排序吗
提前谢谢