tiddi rastogi
tiddi rastogi

Reputation: 526

jsp page redirects to next page even when if condition of JS is true

I have a submit button when I click on that button ,if the end date input field is less than start date input field then an alert message is shown.But when I click OK of alert message then it is redirected to next page even though it should not as false is being returned in if condition.

My code for javascript is-

<script type="text/javascript">
function date_comapare()
{

    var d1=document.getElementById("startdate").value; // start date 
    var d2=document.getElementById("enddate").value; //end date 

    if(new Date(d2).getTime() < new Date(d1).getTime()) 
{ 
    alert("Endate date should be greater than start date"); // handle your error validation here 
    return false; 
    }
    else
        {return true}; 
    } 

</script>

So when if condition is true then why the page is being redirected to next page?

My code for form is-

<body>
<jsp:useBean id="obj"  class="ref_Database.Refernce_Database" />

<form method="post" action="Compvac4.jsp">
Select Reference:
<select name="ref_logtime" >
<option value="Select">Select</option>
<c:forEach var="aff" items="${obj.connect()}">
<option value="${aff.value}">${aff.key} ${aff.value}</option>
</c:forEach>
</select>

<br><br>
<b>Select Date to be compared</b><br>
<p>Date: <input type="text" name="datepicker" id="datepicker"></p>

<input id="startdate" type="text" size="25" name="startdate" onclick="javascript:NewCal('startdate','mmddyyyy',true,24)" >
<a>
<img src="images/cal.gif" width="10" height="10" border="0" alt="Pick a date">
</a>

<input id="enddate" type="text" size="25" name="enddate" onclick="javascript:NewCal('enddate','mmddyyyy',true,24)" >
<a>
<img src="images/cal.gif" width="10" height="10" border="0" alt="Pick a date">
</a>

 <input type="submit"  onclick="date_comapare()" value="Submit"><br>

</form>

</body>

Upvotes: 1

Views: 1419

Answers (1)

Ravi K Thapliyal
Ravi K Thapliyal

Reputation: 51721

Change your submit button declaration to

<input type="submit" onclick="return date_compare();" value="Submit" />

Upvotes: 2

Related Questions