可以't获取在Javascript中显示的总小时数
Can't get total hours displayed in Javascript
我需要为我的javascript类创建一个注册页面。通过使用本地存储,该程序需要允许学生注册4节课,每节课总共3个学时。当你点击显示器时,你应该会看到注册的课程和总学时。因此,如果一个学生注册了所有4门课,那么总学时应该是12小时。如果一个学生注册了3个班,那么总数应该是9个等等。如果一名学生放弃了一个班,结果应该是null。课程显示,但总学时设置为0。我该怎么解决这个问题?这是我所拥有的:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Class Registration</title>
<style>
body {
background-color:lightblue;
}
</style>
<script>
function storeTask(task) {
var taskDetail = document.getElementById(task).value;
localStorage.setItem(task, taskDetail);
}
function getTask(task) {
document.getElementById(task).value = localStorage.getItem(task);
}
function clearTask(task) {
localStorage.removeItem(task);
document.getElementById(task).value="";
}
function displayTasks() {
var intTotal =0;
if (localStorage.getItem('Class1') != null) {
}
outputResults = document.getElementById("Results");
outputResults.innerHTML =
'Class 1: ' + localStorage.getItem('class1') + '<br />' +
'Class 2: ' + localStorage.getItem('class2') + '<br />' +
'Class 3: ' + localStorage.getItem('class3') + '<br />' +
'Class 4: ' + localStorage.getItem('class4') + '<br />' +
'<br />' +
'Total Class Hours: ' + intTotal +
'';
}
</script>
</head>
<body>
<table width="100%">
<tr>
<td valign="top">
<div id="outer">
<h1>Local Storage</h1>
My Upcoming Classes
<br><br>
Class 1:
<select id="class1">
<option value="">Please Select a Class</option>
<option value="IT Management">IT Management</option>
<option value="Multimedia Technology">Multimedia Technology</option>
<option value="Multimedia Authoritizing">Multimedia Authoritizing</option>
<option value="Web Site Development">Web Site Development</option>
<input type="button" value="Register"
onclick="storeTask('class1');">
<input type="button" value="Drop"
onclick="clearTask('class1');">
<br><br>
Class 2:
<select id="class2">
<option value="">Please Select a Class</option>
<option value="IT Management">IT Management</option>
<option value="Multimedia Technology">Multimedia Technology</option>
<option value="Multimedia Authoritizing">Multimedia Authoritizing</option>
<option value="Web Site Development">Web Site Development</option>
<input type="button" value="Register"
onclick="storeTask('class2');">
<input type="button" value="Drop"
onclick="clearTask('class2');">
<br><br>
Class 3:
<select id="class3">
<option value="">Please Select a Class</option>
<option value="IT Management">IT Management</option>
<option value="Multimedia Technology">Multimedia Technology</option>
<option value="Multimedia Authoritizing">Multimedia Authoritizing</option>
<option value="Web Site Development">Web Site Development</option>
<input type="button" value="Register"
onclick="storeTask('class3');">
<input type="button" value="Drop"
onclick="clearTask('class3');">
<br><br>
Class 4:
<select id="class4">
<option value="">Please Select a Class</option>
<option value="IT Management">IT Management</option>
<option value="Multimedia Technology">Multimedia Technology</option>
<option value="Multimedia Authoritizing">Multimedia Authoritizing</option>
<option value="Web Site Development">Web Site Development</option>
<input type="button" value="Register"
onclick="storeTask('class4');">
<input type="button" value="Drop"
onclick="clearTask('class4');">
</div>
</td>
<td valign="top">
Output Results
<br>
<input type="button" value="Display Tasks"
onclick="displayTasks();">
<div id="Results"></div>
</td>
</tr>
</table>
</body>
</html>
您可以有一个全局变量,每次存储一个项时,该变量将递增3。然后你在代码的其他部分使用这个变量。如果这确实是家庭作业,我认为这应该让你在不完全交给你的情况下解决这个问题。
你似乎很接近。每次调用displayTasks
时,都会将intTotal
重置为0,但每次存储其中一个项目时,都不会将其递增3。与@carlosHT提到的类似,您希望将总数存储在可访问的位置,并在每次存储项目时访问它以增加它。如果可能的话,我会避免使用全局变量。希望这不会泄露太多信息。
相关文章:
- 如何将分钟格式化为小时和分钟,但仅显示小时(如果's>60分钟
- 当数字太小时,Highcharts轴无法正确显示值
- 月视图 - 仅显示 9 小时而不是 09:00
- 如何获得只显示小时的倒计时
- 元素维度正在DOM中更新,但更改并没有发生;t在调整大小时显示
- 需要在EXTJ的时间字段中显示07:00、15:00、23:00(增加8小时)
- 完整日历提前 1 小时显示事件
- 当非整小时偏移时,带有 Moment 的时区显示不正确.js
- 日历显示 24 小时制,我需要 12 小时制
- 每 3 小时显示一次对话框
- Javascript:如何以毫秒为单位将时间显示为天:小时:分钟
- 在指定时间中添加 24 小时后在网页上显示时间 x
- 如何像这样显示时间,例如:1秒前,1分钟前,1小时前,1个月前
- 高度自动 - 调整浏览器大小时显示隐藏内容
- 如何仅显示从javascript date.toLocaleTimeString()开始的小时和分钟
- 如何将 2 小时添加到当前日期时间并将结果显示回日期时间
- 在 JS 中以单词形式显示小时和分钟
- Jquery Countup只显示小时和分钟
- 如何在dijit.form.TimeTextBox中设置时间模式以显示小时:分钟am|pm ?
- 在表中以AM/PM格式显示小时的另一种方式:在angular JS中,每小时从上午12点到晚上11点