mitkomitrov

Untitled

Nov 19th, 2019
544
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.61 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html lang="en" dir="ltr">
  3. <head>
  4. <meta charset="utf-8">
  5. <title>IP Kol1</title>
  6.  
  7. </head>
  8. <body>
  9. <div class="Container">
  10. <div class="Right">
  11. <h3> Revert History</h3>
  12. <ul id="revertList">
  13.  
  14. </ul>
  15. </div>
  16. </div>
  17. <div class="Details">
  18. <form>
  19. <label>Name</label>
  20. <input type="text" name="name" value="" id="name"> <br><br>
  21. <label>Index</label>
  22. <input type="text" name="index" value="" id="index"> <br> <br>
  23. <label>Phone</label>
  24. <input type="text" name="phone" value="" id="phone"> <br><br>
  25.  
  26. <div class="Grades">
  27. <label>Grade</label>
  28. <input type="radio" name="grade" value="5">5
  29. <input type="radio" name="grade" value="6">6
  30. <input type="radio" name="grade" value="7">7
  31. <input type="radio" name="grade" value="8">8
  32. <input type="radio" name="grade" value="9">9
  33. <input type="radio" name="grade" value="10">10
  34. </div>
  35. <label> Session </label>
  36. <select id="Session">
  37. <option value="January">January</option>
  38. <option value="June">June</option>
  39. <option value="September">September</option>
  40. </select>
  41.  
  42.  
  43. </form>
  44. <br><br>
  45. <button onclick="addStudent();"> Add Student </button>
  46. <hr>
  47. <h3> Students(Average <label id="average"> 0.00 </label>)
  48. <table class="Table" id="Table">
  49. <tr>
  50. <th>Name</th>
  51. <th>Index</th>
  52. <th>Phone</th>
  53. <th>Grade</th>
  54. <th>Session</th>
  55. <th>Actions</th>
  56. </tr>
  57. <tr>
  58.  
  59. </tr>
  60. </table>
  61. </div>
  62.  
  63.  
  64. </body>
  65. <script type="text/javascript">
  66. var studentList = []
  67. var table = document.getElementById('Table');
  68. var reverted = document.getElementById('revertList');
  69. var avg = document.getElementById('average');
  70. class Student{
  71. constructor(name,index,phone,grade,session){
  72. this.name=name;
  73. this.index=index;
  74. this.phone=phone;
  75. this.grade=grade;
  76. this.session=session;
  77. }
  78. }
  79.  
  80. function addStudent(){
  81. // alert("Executed");
  82. var name = document.getElementById('name').value;
  83. var index=document.getElementById('index').value;
  84. var phone=document.getElementById('phone').value;
  85. var grade=document.querySelector('input[name="grade"]:checked').value;
  86. var session=document.getElementById('Session').value;
  87. // alert(document.getElementById('phone').value);
  88. // alert(name + index + phone + grade + session);
  89. var addStudent = new Student(name,index,phone,grade,session);
  90.  
  91. studentList.push(addStudent);
  92.  
  93. var row=table.insertRow(-1);
  94. var cell1 = row.insertCell(0);
  95. var cell2 = row.insertCell(1);
  96. var cell3=row.insertCell(2);
  97. var cell4=row.insertCell(3);
  98. var cell5 = row.insertCell(4);
  99. var cell6=row.insertCell(5);
  100. cell1.innerHTML=name;
  101. cell2.innerHTML=index;
  102. cell3.innerHTML=parasePhone(phone);
  103. cell4.innerHTML=grade;
  104. cell5.innerHTML = session;
  105. cell6.innerHTML = "<button id=\"student" + studentList.length + "\" onclick=\"confirm(this)\">Confirm</button> <button id =\"student1"+studentList.length+"\" onclick=\"revert(this)\">Revert</button>"
  106.  
  107. avg.innerHTML = calculateAverage();
  108. }
  109. function calculateAverage(){
  110. var sum=0.00;
  111. for(i=0;i<studentList.length;i++){
  112. sum +=parseInt(studentList[i].grade);
  113. }
  114. return sum/studentList.length;
  115. }
  116. function revert(row){
  117. // alert(studentList.length);
  118. var i = row.parentNode.parentNode.rowIndex;
  119. table.deleteRow(i);
  120. // alert(i);
  121. var item = document.createElement('li');
  122. item.appendChild(document.createTextNode(studentList[i-2].index + " - grade " + studentList[i-2].grade));
  123.  
  124. reverted.appendChild(item);
  125. studentList.splice(i-2,1);
  126. // alert(i-2);
  127. // alert(studentList.length);
  128. avg.innerHTML = calculateAverage();
  129. // console.log(studentList);
  130. if(studentList.length ===0 ){
  131. avg.innerHTML=0.00;
  132. }
  133.  
  134.  
  135. }
  136. function confirm(row){
  137. var i = row.parentNode.parentNode.rowIndex;
  138. table.rows.item(i).style.backgroundColor ="green";
  139. document.getElementById("student" +(i-1)).disabled = true;
  140. document.getElementById("student1" +(i-1)).disabled = true;
  141.  
  142. }
  143. function parasePhone(phone){
  144. return phone.slice(0,3) + "/"+phone.slice(3,6) + "-" + phone.slice(6,9);
  145. }
  146. </script>
  147. </html>
Add Comment
Please, Sign In to add comment