如何在jsp中验证表单数据并返回到相同的页面

How to validate form data and return back to same page in jsp?

本文关键字:返回 数据 jsp 表单 验证      更新时间:2023-09-26

我试图验证一组选择框在我的jsp,如果有任何错误;它应该返回一个警告框,否则控件应该被转移到servlet。我已经试过了-

JSP代码-
<script language="text/javascript">
function validatesb(){
    var select = document.getElementById('month').value;
    var select1 = document.getElementById('year').value;
    alert(select);
    if(select=="" || select1==""){
        console.log(select);
        return false;
    }       
    return true;
}

    <form method="post" action="searchresult.do">
    <select id="month" class="required">
        <option value="" disabled="disabled">Month</option>
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="6">6</option>
        <option value="7">7</option>
        <option value="8">8</option>
        <option value="9">9</option>
        <option value="10">10</option>
        <option value="11">11</option>
        <option value="12">12</option>
    </select> 
    <select id="year" class="required">
        <option value="" disabled="disabled">Year</option>
        <option value="2005">2005</option>
        <option value="2006">2006</option>
        <option value="2007">2007</option>
        <option value="2008">2008</option>
        <option value="2009">2009</option>
        <option value="2010">2010</option>
        <option value="2011">2011</option>
        <option value="2012">2012</option>
        <option value="2013">2013</option>
        <option value="2014">2014</option>
        <option value="2015">2015</option>
    </select> 
    <input type="submit" value="search" onClick='return validatesb();'>
</form>

控件直接跳转到servlet页面。请帮助。

JSP:

<form method="post" action="searchresult.do" onsubmit='return validatesb();'>
...............
<input type="submit" value="search">
</form>

JS:

function validatesb(){
    var select = document.getElementById('month').value;
    var select1 = document.getElementById('year').value;
    if(select=="" || select1==""){
        console.log(select);
        return false;
    }
  //NO NEED OF RETURN TRUE       
}

你应该使用

<form method="post" action="searchresult.do" onsubmit="return validatesb();">