Я хотел добавить вкладки на своей странице, чтобы упорядочить поля ввода по группам, но это пока только шаблон.
Проблема в том, что когда я щелкаю вкладку, страница отправляется и выдает мне страницу с ошибкой 404, а это не должно быть.
Я только что скопировал пример из w3school , как переключать вкладки
Обратите внимание, что я новичок в JavaScript и HTML.
Я не знаю что не так. Я попытался добавить return false в мою функцию javascript, но страница все еще отправляется, и я также добавил атрибут «onsubmit», установленный на «return false» в теге кнопки.
Я пытался закомментировать теги <form action="...>
, и это, конечно, сработало, не отправив страницу.
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<script>
function viewTab(evt, tabId) {
var i, tabcontent, tablinks;
tabcontent = document.getElementsByClassName("tabcontent");
for (i = 0; i < tabcontent.length; i++) {
tabcontent[i].style.display = "none";
}
tablinks = document.getElementsByClassName("tablinks");
for (i = 0; i < tablinks.length; i++) {
tablinks[i].className = tablinks[i].className
.replace(" active", "");
}
document.getElementById(tabId).style.display = "block";
evt.currentTarget.className += " active";
return false;
}
</script>
<style>
body {
font-family: Arial;
}
/* Style the tab */
.tab {
overflow: hidden;
border: 1px solid #ccc;
background-color: #f1f1f1;
}
/* Style the buttons inside the tab */
.tab button {
background-color: inherit;
float: left;
border: none;
outline: none;
cursor: pointer;
padding: 14px 16px;
transition: 0.3s;
font-size: 17px;
}
/* Change background color of buttons on hover */
.tab button:hover {
background-color: #ddd;
}
/* Create an active/current tablink class */
.tab button.active {
background-color: #ccc;
}
/* Style the tab content */
.tabcontent {
display: none;
padding: 6px 12px;
border: 1px solid #ccc;
border-top: none;
}
</style>
</head>
<body>
<form:errors />
<form action="/CapitalApprovalProcessTool/createrequest" method="post">
enter all request input fields <input type="text" />
<div class="tab">
<button class="tablinks" onclick="viewTab(event, 'capitalrequest')"
onsubmit="return false;">Capital Request</button>
<button class="tablinks" onclick="viewTab(event, 'capitalequip')"
onsubmit="return false;">Capital Equipment</button>
<button class="tablinks" onclick="viewTab(event, 'capitalattach')"
onsubmit="return false;">Capital Attachments</button>
</div>
<div id="capitalrequest" class="tabcontent">
<h3>Capital Request</h3>
</div>
<div id="capitalequip" class="tabcontent">
<h3>Capital Equipment</h3>
</div>
<div id="capitalattach" class="tabcontent">
<h3>Capital Attachments</h3>
</div>
</form>
</body>
</html>
Какие еще решения можно попробовать?