javascript表单验证冲突
我已经实现了一个简单的javascript验证,但是验证和表单提交从来不会同时发生 当我使用“onsubmit”(如下)时,它将转到下一页而不进行验证javascript表单验证冲突,javascript,validation,Javascript,Validation,我已经实现了一个简单的javascript验证,但是验证和表单提交从来不会同时发生 当我使用“onsubmit”(如下)时,它将转到下一页而不进行验证 function validate_booking_form() { chk_fromcity(); chk_tocity(); chk_depature_date(); } function chk_fromcity() { var from_city = $('#fro
function validate_booking_form()
{
chk_fromcity();
chk_tocity();
chk_depature_date();
}
function chk_fromcity()
{
var from_city = $('#from_cities').val();
if (from_city == '')
{
$("#from_cities").removeClass('fieldInput');
$("#from_cities").addClass('error');
$("#errormsg_from").fadeTo(200, 1, function()
{
$(this).html('Please Enter a City').addClass('errormsg');
})
}
else
{
$('#from_cities').removeClass('error');
$('#from_cities').addClass('fieldInput');
$("#errormsg_from").fadeTo(200, 1, function()
{
$(this).html('').removeClass('errormsg');
})
}
}
如果我在表单末尾使用“onclick”
<input type="button" name="submit" id="send" value="Search Flights" onclick="return validate_booking_form();" />
</form>
形式呢
<form method="POST" action="../controller/booking.php" name="search_flights_names" onsubmit="return validate_booking_form();" >
/// Form content
<div class="form_input_container">
<div class="form_input">
<input type="text" id="from_cities" name="from_city" class="fieldInput" onblur="return chk_fromcity()" />
</div>
</div>
<input type="submit" name="submit" id="send" value="Search Flights" />
</form>
///形式内容
提交是正确的按钮
在表单元素中尝试putton
onsubmit
,并在那里而不是在click事件上进行验证。这样,按enter键不会绕过所有验证。尝试使用。我认为它应该可以很好地解决您的问题从chk_fromcity()返回false以停止表单发布到操作
function chk_fromcity()
{
var from_city = $('#from_cities').val();
if (from_city == '')
{
$("#from_cities").removeClass('fieldInput');
$("#from_cities").addClass('error');
$("#errormsg_from").fadeTo(200, 1, function()
{
$(this).html('Please Enter a City').addClass('errormsg');
});
return false;
}
$('#from_cities').removeClass('error');
$('#from_cities').addClass('fieldInput');
$("#errormsg_from").fadeTo(200, 1, function()
{
$(this).html('').removeClass('errormsg');
})
// return true; // default is true which is why you were passing the validation
}
实际上我使用了提交按钮,在这种情况下,表单将在没有验证的情况下提交,功能的代码在哪里!我忘了包括那个。。。。。代码被编辑