javascript - 如何自动检查页面并使标签在 Javascript 中不可见
问题描述
这是我的 jsp 文件,其中包含来自后端的两个有用参数 pageIndex 和 numOfPages。我想做一个简单的验证,其中 javascript 可以检查并使下一个或上一个不可见。但是,似乎该功能甚至没有激活。不知道有没有什么方法可以在每次页面加载的时候调用验证函数
<!DOCTYPE html>
<html>
<title>NTU Student Course Planner</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="css/style.css">
<link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Raleway">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<style>
body,h1,h2,h3,h4,h5,h6 {font-family: "Raleway", sans-serif}
hr {
display: block;
margin-top: 0.5em;
margin-bottom: 0.5em;
margin-left: auto;
margin-right: auto;
border-style: inset;
border-width: 1px;
}
</style>
<body class="w3-light-grey w3-content" style="max-width:1600px" onload="copy();">
<!-- Sidebar -->
<nav class="w3-sidebar w3-collapse w3-white w3-animate-left" style="z-index:3;width:300px;" id="mySidebar"><br>
<div class="w3-container">
<a href="#" onclick="w3_close()" class="w3-hide-large w3-right w3-jumbo w3-padding w3-hover-grey" title="close menu">
<i class="fa fa-remove"></i>
</a>
<img src="assets/calendar.png" style="width:40%;" class="w3-round"><br><br>
<h4><b>Z440's Timetable Generator</b></h4>
</div>
<div class="w3-bar-block">
<a href="index.jsp" onclick="w3_close()" class="w3-bar-item w3-button w3-padding w3-text-teal"><i class="fa fa-th-large fa-fw w3-margin-right"></i>Create Timetable</a>
</div>
</nav>
<!-- Overlay effect when opening sidebar on small screens -->
<div class="w3-overlay w3-hide-large w3-animate-opacity" onclick="w3_close()" style="cursor:pointer" title="close side menu" id="myOverlay"></div>
<!-- Page Content -->
<div class="w3-main" style="margin-left:300px">
<!-- Header -->
<header id="portfolio">
<a href="#"><img src="assets/calendar.png" style="width:65px;" class="w3-circle w3-right w3-margin w3-hide-large w3-hover-opacity"></a>
<span class="w3-button w3-hide-large w3-xxlarge w3-hover-text-grey" onclick="w3_open()"><i class="fa fa-bars"></i></span>
<div class="w3-container">>
</div>
<div class="w3-section w3-bottombar w3-padding-16">
<h1><b>NTU Student Course Planner</b></h1>
</div>
<div class="w3-container">
<div class="container-1">
<br>
<h5><b>Courses Selected:</b></h5>
<p id = "courselist"></p>
<h5><b>Module Code Selected:</b></h5>
<p id = "moduleCodeList">${timetables.get(pageIndex).courseIndexList}</p>
<hr>
<br>
<h6><center>Generated Timetable</center></h6>
<div class="center">
<div class="pagination">
<a href="#" onclick="decrement()">< Previous</a>
<a href="#" style="padding: 10px 16px">Download</a>
<a href="#" style="padding: 10px 30px" onclick="increment()">Next ></a>
</div>
<form id="searchForm1" name="searchForm1" action="nextTimetable" method="post">
<input type="text" name="pageIndex" id="pageIndex" value="${pageIndex + 1}">
<input type="text" name="num" id="num" value="${numOfPages}">
<input type="submit" id = "Next" value="Next">
</form>
<form id="searchForm2" name="searchForm2" action="previousTimetable" method="post">
<input type="submit" id = "Previous" value="Previous">
</form>
</div>
<br>
<div id="tableDiv">
<table id="timeTableTable">
<tr>
<th>TIME</th>
<th>MON</th>
<th>TUE</th>
<th>WED</th>
<th>THU</th>
<th>FRI</th>
</tr>
<tr>
<td>0830-0930</td>
<td>${timetables.get(pageIndex).message[1][0]}</td>
<td>${timetables.get(pageIndex).message[2][0]}</td>
<td>${timetables.get(pageIndex).message[3][0]}</td>
<td>${timetables.get(pageIndex).message[4][0]}</td>
</tr>
<tr>
<td>0930-1030</td>
<td>${timetables.get(pageIndex).message[0][1]}</td>
<td>${timetables.get(pageIndex).message[1][1]}</td>
<td>${timetables.get(pageIndex).message[2][1]}</td>
<td>${timetables.get(pageIndex).message[3][1]}</td>
<td>${timetables.get(pageIndex).message[4][1]}</td>
</tr>
<tr>
<td>1030-1130</td>
<td>${timetables.get(pageIndex).message[0][2]}</td>
<td>${timetables.get(pageIndex).message[1][2]}</td>
<td>${timetables.get(pageIndex).message[2][2]}</td>
<td>${timetables.get(pageIndex).message[3][2]}</td>
<td>${timetables.get(pageIndex).message[4][2]}</td>
</tr>
<tr>
<td>1130-1230</td>
<td>${timetables.get(pageIndex).message[0][3]}</td>
<td>${timetables.get(pageIndex).message[1][3]}</td>
<td>${timetables.get(pageIndex).message[2][3]}</td>
<td>${timetables.get(pageIndex).message[3][3]}</td>
<td>${timetables.get(pageIndex).message[4][3]}</td>
</tr>
<tr>
<td>1230-1330</td>
<td>${timetables.get(pageIndex).message[0][4]}</td>
<td>${timetables.get(pageIndex).message[1][4]}</td>
<td>${timetables.get(pageIndex).message[2][4]}</td>
<td>${timetables.get(pageIndex).message[3][4]}</td>
<td>${timetables.get(pageIndex).message[4][4]}</td>
</tr>
<tr>
<td>1330-1430</td>
<td>${timetables.get(pageIndex).message[0][5]}</td>
<td>${timetables.get(pageIndex).message[1][5]}</td>
<td>${timetables.get(pageIndex).message[2][5]}</td>
<td>${timetables.get(pageIndex).message[3][5]}</td>
<td>${timetables.get(pageIndex).message[4][5]}</td>
</tr>
<tr>
<td>1430-1530</td>
<td>${timetables.get(pageIndex).message[0][6]}</td>
<td>${timetables.get(pageIndex).message[1][6]}</td>
<td>${timetables.get(pageIndex).message[2][6]}</td>
<td>${timetables.get(pageIndex).message[3][6]}</td>
<td>${timetables.get(pageIndex).message[4][6]}</td>
</tr>
<tr>
<td>1530-1630</td>
<td>${timetables.get(pageIndex).message[0][7]}</td>
<td>${timetables.get(pageIndex).message[1][7]}</td>
<td>${timetables.get(pageIndex).message[2][7]}</td>
<td>${timetables.get(pageIndex).message[3][7]}</td>
<td>${timetables.get(pageIndex).message[4][7]}</td>
</tr>
<tr>
<td>1630-1730</td>
<td>${timetables.get(pageIndex).message[0][8]}</td>
<td>${timetables.get(pageIndex).message[1][8]}</td>
<td>${timetables.get(pageIndex).message[2][8]}</td>
<td>${timetables.get(pageIndex).message[3][8]}</td>
<td>${timetables.get(pageIndex).message[4][8]}</td>
</tr>
<tr>
<td>1730-1830</td>
<td>${timetables.get(pageIndex).message[0][9]}</td>
<td>${timetables.get(pageIndex).message[1][9]}</td>
<td>${timetables.get(pageIndex).message[2][9]}</td>
<td>${timetables.get(pageIndex).message[3][9]}</td>
<td>${timetables.get(pageIndex).message[4][9]}</td>
</tr>
<tr>
<td>1830-1930</td>
<td>${timetables.get(pageIndex).message[0][10]}</td>
<td>${timetables.get(pageIndex).message[1][10]}</td>
<td>${timetables.get(pageIndex).message[2][10]}</td>
<td>${timetables.get(pageIndex).message[3][10]}</td>
<td>${timetables.get(pageIndex).message[4][10]}</td>
</tr>
<tr>
<td>1930-2030</td>
<td>${timetables.get(pageIndex).message[0][11]}</td>
<td>${timetables.get(pageIndex).message[1][11]}</td>
<td>${timetables.get(pageIndex).message[2][11]}</td>
<td>${timetables.get(pageIndex).message[3][11]}</td>
<td>${timetables.get(pageIndex).message[4][11]}</td>
</tr>
<tr>
<td>2030-2130</td>
<td>${timetables.get(pageIndex).message[0][12]}</td>
<td>${timetables.get(pageIndex).message[1][12]}</td>
<td>${timetables.get(pageIndex).message[2][12]}</td>
<td>${timetables.get(pageIndex).message[3][12]}</td>
<td>${timetables.get(pageIndex).message[4][12]}</td>
</tr>
</table>
</div>
<br>
<br>
</div>
</div>
</header>
<!-- End of Page Content -->
</div>
<script type="text/javascript" src="js/scripts.js">
</script>
</body>
</html>
这是我的 javascript 文件
function validateNextPrevious() {
if(document.getElementById("pageIndex").value == 0)
{
document.getElementById("Previous").style.display = "none";
}
if(document.getElementById("pageIndex").value == document.getElementById("num").value)
{
document.getElementById("Next").style.display = "none";
}
}
window.onload = function () {
validateNextPrevious();
}
解决方案
首先,你必须让页面接收到像js文件这样的静态资源,<script type="text/javascript" src="js/scripts.js" />
不是正确的方法,试试:
<script src="${pageContext.request.contextPath}/js/scripts.js"/ >
推荐阅读
- python - 搜索元组列表以查找匹配子字符串的算法方法?
- react-native - react-navigation 5 一次导航多条路线
- python - 了解 flask_sqlalchemy 模型
- angular - 由于 Hammer.JS 未加载,无法绑定“swiperight”事件
- android - Firebase + Kotlin,查找文档 ID 并删除带有 ID 的文档
- python - 单击任何 Python 模块的浏览器提示
- mysql - 续集 AWS RDS 代理连接问题
- javascript - 改变颜色给定句子中所有出现的特定符号
- php - 未捕获的类型错误:$(...).ajaxForm 不是函数
- flutter - 为音频播放器设置依赖项后,Flutter/Gradle 无法运行应用程序