質問編集履歴
3
質問内容更新
title
CHANGED
File without changes
|
body
CHANGED
@@ -2,11 +2,15 @@
|
|
2
2
|
僕はHTML+JavaScriptを勉強し始めです。
|
3
3
|
今、テーブルに関する処理を上記のタイトルのように動作しようとしております。
|
4
4
|
そして、以下のように実装していますが、なかなか想定に一致しません。
|
5
|
-
実際結果は「ステータス」列にて値が変わりません。
|
5
|
+
~~実際結果は「ステータス」列にて値が変わりません。
|
6
6
|
但し、僕が期待した結果が「ステータス」列に「Pending」を表示してから、「NG、OKなど」に変更していきます。
|
7
7
|
以下のように実装してエラーが発生しませんが、期待のようにならないので、
|
8
|
-
どのように改善すればいいでしょうか。
|
8
|
+
どのように改善すればいいでしょうか。~~
|
9
|
-
|
9
|
+
上記の内容はLhankor_Mhy様の回答通り解決できました。
|
10
|
+
但し、以下の実装だと、「Pending」のステータスを見えなく、
|
11
|
+
「OK,NG」しか見えません。
|
12
|
+
期待したのはPendingを見てから各列を変更していくなので、どうすれば解決でしょうか。
|
13
|
+
まだ勉強中なので、キーワードを調べようとしますが、参照できるものだけでいいですが、解決方法を教えていただけますと幸いです。
|
10
14
|
```html
|
11
15
|
<!DOCTYPE html>
|
12
16
|
<html>
|
@@ -52,6 +56,7 @@
|
|
52
56
|
|
53
57
|
|
54
58
|
$("#add-student-btn").click(function() {
|
59
|
+
table.clear().draw()
|
55
60
|
let infoTextArea = document.getElementById("text_area").value.trim();
|
56
61
|
let studentInfoList = new Array();
|
57
62
|
infoTextArea = infoTextArea.split("\n");
|
@@ -71,9 +76,10 @@
|
|
71
76
|
studentInfoList.push(studentInfo);
|
72
77
|
}
|
73
78
|
for ( i = 0; i < studenNum; i++) {
|
74
|
-
//
|
79
|
+
// tại đây em muốn check từng tên rồi update kết quả status
|
75
80
|
let checkNameStudent = checkStudent(studentInfoList[i])
|
76
|
-
table.row.
|
81
|
+
table.row(i).data(checkNameStudent).draw();
|
82
|
+
|
77
83
|
}
|
78
84
|
|
79
85
|
});
|
@@ -81,14 +87,15 @@
|
|
81
87
|
|
82
88
|
function checkStudent(data) {
|
83
89
|
let studentName = data["name"];
|
90
|
+
sleep(5000);
|
84
91
|
if (studentName == "Tommy") {
|
85
|
-
|
92
|
+
var rowData = {
|
86
93
|
"no": data["no"],
|
87
94
|
"name": data["name"],
|
88
95
|
"status": "OK-passed"
|
89
96
|
};
|
90
97
|
} else {
|
91
|
-
|
98
|
+
var rowData = {
|
92
99
|
"no": data["no"],
|
93
100
|
"name": data["name"],
|
94
101
|
"status": "NG-failed"
|
@@ -96,6 +103,15 @@
|
|
96
103
|
}
|
97
104
|
return rowData;
|
98
105
|
}
|
106
|
+
|
107
|
+
function sleep(milliseconds) {
|
108
|
+
var start = new Date().getTime();
|
109
|
+
for (var i = 0; i < 1e7; i++) {
|
110
|
+
if ((new Date().getTime() - start) > milliseconds){
|
111
|
+
break;
|
112
|
+
}
|
113
|
+
}
|
114
|
+
}
|
99
115
|
```
|
100
116
|
|
101
117
|
ご教示していただけますと幸いです。
|
2
質問内容更新
title
CHANGED
File without changes
|
body
CHANGED
@@ -2,6 +2,11 @@
|
|
2
2
|
僕はHTML+JavaScriptを勉強し始めです。
|
3
3
|
今、テーブルに関する処理を上記のタイトルのように動作しようとしております。
|
4
4
|
そして、以下のように実装していますが、なかなか想定に一致しません。
|
5
|
+
実際結果は「ステータス」列にて値が変わりません。
|
6
|
+
但し、僕が期待した結果が「ステータス」列に「Pending」を表示してから、「NG、OKなど」に変更していきます。
|
7
|
+
以下のように実装してエラーが発生しませんが、期待のようにならないので、
|
8
|
+
どのように改善すればいいでしょうか。
|
9
|
+
|
5
10
|
```html
|
6
11
|
<!DOCTYPE html>
|
7
12
|
<html>
|
@@ -92,5 +97,6 @@
|
|
92
97
|
return rowData;
|
93
98
|
}
|
94
99
|
```
|
100
|
+
|
95
101
|
ご教示していただけますと幸いです。
|
96
102
|
よろしくお願いいたします。
|
1
html本体を更新しました
title
CHANGED
File without changes
|
body
CHANGED
@@ -3,20 +3,37 @@
|
|
3
3
|
今、テーブルに関する処理を上記のタイトルのように動作しようとしております。
|
4
4
|
そして、以下のように実装していますが、なかなか想定に一致しません。
|
5
5
|
```html
|
6
|
-
<
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
<
|
15
|
-
|
16
|
-
</
|
17
|
-
<
|
18
|
-
<
|
19
|
-
<
|
6
|
+
<!DOCTYPE html>
|
7
|
+
<html>
|
8
|
+
<head>
|
9
|
+
<title>Datatable demo</title>
|
10
|
+
</head>
|
11
|
+
|
12
|
+
<body>
|
13
|
+
<textarea type="text" name="text_area" id="text_area"></textarea>
|
14
|
+
<table id="student-info-table">
|
15
|
+
<thead>
|
16
|
+
<td>No</td>
|
17
|
+
<td>Name</td>
|
18
|
+
<td>Status</td>
|
19
|
+
</thead>
|
20
|
+
</table>
|
21
|
+
<div>
|
22
|
+
<button id="add-student-btn">Add</button>
|
23
|
+
</div>
|
24
|
+
</body>
|
25
|
+
|
26
|
+
<!-- Bootstrap -->
|
27
|
+
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
|
28
|
+
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
29
|
+
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
|
30
|
+
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>
|
31
|
+
|
32
|
+
<!-- DataTable -->
|
33
|
+
<link rel="stylesheet" href="https://cdn.datatables.net/1.10.22/css/jquery.dataTables.min.css">
|
34
|
+
<script src="https://cdn.datatables.net/1.10.22/js/jquery.dataTables.min.js"></script>
|
35
|
+
<script src="./index.js"></script>
|
36
|
+
</html>
|
20
37
|
```
|
21
38
|
index.jsは以下のようになっています。
|
22
39
|
```javascript
|