javascript - 纯粹使用 javascript 或 jquery 对动态生成的 html 进行分页
问题描述
我有一个动态生成行的 html 表。我想基于 css 和 javascript/jquery 实现对这个表的分页。
下面是表格的代码:
< script >
var loop_var = 0;
function select_taf() {
if (loop_var == 0) {
loop_var = 1;
$("table.order-list tbody").empty();
var name1 = "<%= Request.Cookies["emailid"].Value.ToString() %>";
var dtt = document.getElementById("year_date").value;
var tafid;
if (document.getElementById("open_taf").value == "") {
$("table.order-list1 tbody").empty();
$("table.order-list tbody").empty();
tafid = 0;
var myObj;
var request = new XMLHttpRequest();
request.overrideMimeType("application/json");
request.open("GET", '<%=ConfigurationManager.AppSettings["serverip1"].ToString() %>' + name1 + "/" + tafid + "/" + dtt);
request.send();
request.onload = function() {
var superHero = request.response;
myObj = JSON.parse(superHero);
myObj = JSON.parse(myObj);
for (i in myObj.open_list) {
check3(i, myObj.open_list[i].taf_no, myObj.open_list[i].purpose, myObj.open_list[i].loc_of_vst, myObj.open_list[i].no_of_days, myObj.open_list[i].adv_amt, myObj.open_list[i].remarks, myObj.open_list[i].tid, name1, dtt);
}
for (i in myObj.await_app) {
check4(i, myObj.await_app[i].tid, myObj.await_app[i].purpose, myObj.await_app[i].loc_of_vst, myObj.await_app[i].no_of_days, myObj.await_app[i].adv_amt, myObj.await_app[i].remarks, "Await Manager Approval", myObj.await_app[i].yot);
}
for (i in myObj.manager_2_await) {
check4(i, myObj.manager_2_await[i].tid, myObj.manager_2_await[i].purpose, myObj.manager_2_await[i].loc_of_vst, myObj.manager_2_await[i].no_of_days, myObj.manager_2_await[i].adv_amt, myObj.manager_2_await[i].remarks, "Await Manager 2 Approval", myObj.manager_2_await[i].yot);
}
for (i in myObj.manager_1_reject) {
check4(i, myObj.manager_1_reject[i].tid, myObj.manager_1_reject[i].purpose, myObj.manager_1_reject[i].loc_of_vst, myObj.manager_1_reject[i].no_of_days, myObj.manager_1_reject[i].adv_amt, myObj.manager_1_reject[i].remarks, "Manager 1 Reject", myObj.manager_1_reject[i].yot);
}
for (i in myObj.manager_2_reject) {
check4(i, myObj.manager_2_reject[i].tid, myObj.manager_2_reject[i].purpose, myObj.manager_2_reject[i].loc_of_vst, myObj.manager_2_reject[i].no_of_days, myObj.manager_2_reject[i].adv_amt, myObj.manager_2_reject[i].remarks, 'Manager 2 Reject', myObj.manager_2_reject[i].yot);
}
for (i in myObj.Auto_app_mrg_1) {
check4(i, myObj.Auto_app_mrg_1[i].tid, myObj.Auto_app_mrg_1[i].purpose, myObj.Auto_app_mrg_1[i].loc_of_vst, myObj.Auto_app_mrg_1[i].no_of_days, myObj.Auto_app_mrg_1[i].adv_amt, myObj.Auto_app_mrg_1[i].remarks, 'Auto-Approved by manager 1', myObj.Auto_app_mrg_1[i].yot);
}
loop_var = 0;
}
} else {
$("table.order-list tbody").empty();
$("table.order-list1 tbody").empty();
tafid = document.getElementById("open_taf").value;
var myObj;
var request = new XMLHttpRequest();
request.overrideMimeType("application/json");
request.open("GET", '<%=ConfigurationManager.AppSettings["serverip1"].ToString() %>' + name1 + "/" + tafid + "/" + dtt);
request.send();
request.onload = function() {
var superHero = request.response;
myObj = JSON.parse(superHero);
myObj = JSON.parse(myObj);
//var counter = myObj.count;
//alert(counter);
for (i in myObj.open_list) {
check3(i, myObj.open_list[i].taf_no, myObj.open_list[i].purpose, myObj.open_list[i].loc_of_vst, myObj.open_list[i].no_of_days, myObj.open_list[i].adv_amt, myObj.open_list[i].remarks, myObj.open_list[i].tid, name1, dtt);
}
for (i in myObj.await_app) {
check4(i, myObj.await_app[i].tid, myObj.await_app[i].purpose, myObj.await_app[i].loc_of_vst, myObj.await_app[i].no_of_days, myObj.await_app[i].adv_amt, myObj.await_app[i].remarks, "Await Manager Approval", myObj.await_app[i].yot);
}
for (i in myObj.manager_2_await) {
check4(i, myObj.manager_2_await[i].tid, myObj.manager_2_await[i].purpose, myObj.manager_2_await[i].loc_of_vst, myObj.manager_2_await[i].no_of_days, myObj.manager_2_await[i].adv_amt, myObj.manager_2_await[i].remarks, "Await Manager 2 Approval", myObj.manager_2_await[i].yot);
}
for (i in myObj.manager_1_reject) {
check4(i, myObj.manager_1_reject[i].tid, myObj.manager_1_reject[i].purpose, myObj.manager_1_reject[i].loc_of_vst, myObj.manager_1_reject[i].no_of_days, myObj.manager_1_reject[i].adv_amt, myObj.manager_1_reject[i].remarks, "Manager 1 Reject", myObj.manager_1_reject[i].yot);
}
for (i in myObj.manager_2_reject) {
check4(i, myObj.manager_2_reject[i].tid, myObj.manager_2_reject[i].purpose, myObj.manager_2_reject[i].loc_of_vst, myObj.manager_2_reject[i].no_of_days, myObj.manager_2_reject[i].adv_amt, myObj.manager_2_reject[i].remarks, 'Manager 2 Reject', myObj.manager_2_reject[i].yot);
}
for (i in myObj.Auto_app_mrg_1) {
check4(i, myObj.Auto_app_mrg_1[i].tid, myObj.Auto_app_mrg_1[i].purpose, myObj.Auto_app_mrg_1[i].loc_of_vst, myObj.Auto_app_mrg_1[i].no_of_days, myObj.Auto_app_mrg_1[i].adv_amt, myObj.Auto_app_mrg_1[i].remarks, 'Auto-Approved by manager 1', myObj.Auto_app_mrg_1[i].yot);
}
loop_var = 0;
}
}
}
}
function check4(counter, data, data1, data2, data3, data4, data5, data6, data7) {
var newRow = $("<tr>");
var cols = "";
cols += '<td name="name' + counter + '">' + data + '</td>';
cols += '<td name="from_loc' + counter + '">' + data1 + '</td>';
cols += '<td name="to_loc' + counter + '">' + data2 + '</td>';
cols += '<td name="date_of_travel' + counter + '">' + data3 + '</td>';
cols += '<td name="status' + counter + '">' + data4 + '</td>';
cols += '<td name="status' + counter + '">' + data5 + '</td>';
if (data6 === "Await Manager Approval") {
cols += '<td name="status' + counter + '"> Approval Pending </td>';
cols += '<td name="status' + counter + '"> Approval Pending </td>';
cols += '<td><button type="button" class="btn btn-primary btn-sm btn-block" id="' + data + "_" + data7 + '" onclick="shw_taf(this.id)">Detail</button></td>';
cols += '<td><button type="button" class="btn btn-danger btn-sm btn-block" id="' + data + "_" + data7 + '" onclick="edt_taf(this.id)">Delete</button></td>';
} else if (data6 === "Auto-Approved by manager 1") {
cols += '<td name="status' + counter + '">Auto-Approved </td>';
cols += '<td name="status' + counter + '"> Approval Pending </td>';
cols += '<td><button type="button" class="btn btn-primary btn-sm btn-block" id="' + data + "_" + data7 + '" onclick="shw_taf(this.id)">Detail</button></td>';
cols += '<td><button type="button" class="btn btn-danger btn-sm btn-block" id="' + data + "_" + data7 + '" onclick="edt_taf(this.id)">Delete</button></td>';
} else if (data6 === "Await Manager 2 Approval") {
cols += '<td name="status' + counter + '"> Approved </td>';
cols += '<td name="status' + counter + '"> Approval Pending </td>';
cols += '<td><button type="button" class="btn btn-primary btn-sm btn-block" id="' + data + "_" + data7 + '" onclick="shw_taf(this.id)">Detail</button></td>';
cols += '<td><button type="button" class="btn btn-danger btn-sm btn-block" id="' + data + "_" + data7 + '" onclick="edt_taf(this.id)">Delete</button></td>';
} else if (data6 === "Manager 1 Reject") {
cols += '<td name="status' + counter + '"> Request Denied </td>';
cols += '<td name="status' + counter + '"> Not Required </td>';
cols += '<td><button type="button" class="btn btn-primary btn-sm btn-block" id="' + data + "_" + data7 + '" onclick="shw_taf(this.id)">Detail</button></td>';
cols += '<td><button type="button" class="btn btn-danger btn-sm btn-block" id="' + data + "_" + data7 + '" onclick="edt_taf(this.id)">Delete</button></td>';
} else if (data6 === "Manager 2 Reject") {
cols += '<td name="status' + counter + '"> Approved </td>';
cols += '<td name="status' + counter + '"> Request Denied </td>';
cols += '<td><button type="button" class="btn btn-primary btn-sm btn-block" id="' + data + "_" + data7 + '" onclick="shw_taf(this.id)">Detail</button></td>';
cols += '<td><button type="button" class="btn btn-danger btn-sm btn-block" id="' + data + "_" + data7 + '" onclick="edt_taf(this.id)">Delete</button></td>';
}
newRow.append(cols);
$("table.order-list1").append(newRow);
} <
/script>
我已经尝试过不适用于我的项目的数据表以及 StackOverflow 上给出的其他几种方法。
请对此进行指导
解决方案
推荐阅读
- python - 在将数据插入突触表数据类型时自动从 Varchar 转换为 Text
- list - 在列表中使用参数 | 颤振/飞镖
- python - 尝试设置 django 会话值时,我有类型错误“十进制类型的对象不是 JSON 可序列化的”,而它是一个字符串值。为什么?
- python - 我正在使用 Python 制作 Hangman 游戏,但我不知道我的代码有什么问题
- google-analytics - 检测到多个安装的全局网站代码 (gtag.js)
- php - 如何在 PHP 中查询不同的 GET 请求
- flutter - 坏状态:使用flutter html渲染html文本时没有元素
- react-native - react native使用底部导航时如何跟踪屏幕标题?
- javascript - Javascript 你可能需要一个额外的加载器
- asp.net-core - 通过依赖注入从asp .net核心中的Redis缓存中获取所有键