0
我已經參考了文檔&堆棧溢出這個問題,我發現了一些解決方案&即使我試着相應的操作,但這些功能適用於我。所以最後我在這裏發佈了這個。
當我點擊提交,直接到submitHandler &不具有相應的驗證所定義的自定義方法select_not_default &我試圖把警報在這個自定義的方法,但它不調用意味着什麼毛病定製方法或jQuery包括我使用的訂單或jQuery版本。
請幫我找到我在做錯的地方。與過去兩天混淆不清。
這是我已經包括了jQuery &驗證插件的順序:
<script type="text/javascript" src="http://192.168.1.8/cruise_booking/application/assets/js/lib/jquery-1.11.0.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.16.0/jquery.validate.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.16.0/additional-methods.js"></script>
下面是HTML形式:
<form action="http://192.168.1.8/cruise_booking/booking/availability" method="post" id="availability_form">
<!-- SIDEBAR AVAILBBILITY -->
<div class="reservation-sidebar_availability bg-gray">
<!-- HEADING -->
<h2 class="reservation-heading">YOUR RESERVATION</h2>
<!-- END/HEADING -->
<select class="awe-select" name="source" id="source">
<option value="0">Source</option>
<option value="1">Goa</option>
<option value="3">Mumbai</option>
</select>
<select class="awe-select" name="destination" id="destination">
<option value="0">Destination</option>
<option value="2">Goa</option>
<option value="4">Mumbai</option>
</select>
<select class="awe-select" name="month" id="month">
<option value="0">Month</option>
<option value="Oct/2017">Oct/2017</option>
<option value="Nov/2017">Nov/2017</option>
</select>
<dddc id="date_dd_container">
<select class="awe-select" name="date" id="date">
<option value="0">Dates</option>
<option value="1">2017-10-12 09:30:00</option>
</select>
</dddc>
<select class="awe-select" name="adults" id="adults">
<option value="0">Adults</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<select class="awe-select" name="children" id="children">
<option value="0">Children</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<select class="awe-select" name="infants" id="infants">
<option value="0">Infants</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<div class="vailability-submit">
<input type="submit" name="search_btn" class="awe-btn awe-btn-13" value="Search">
</div>
</div>
<!-- END/SIDEBAR AVAILBBILITY -->
</form>
下面是驗證形式的代碼。
$.validator.addMethod("select_not_default", function(value, element) {
var d = parseInt(value);
alert(d);
if(d == 0)
{
return false;
}
else
return true;
});
$("#availability_form").validate({
rules: {
source: {
required: true,
select_not_default: true
},
destination: {
required: true,
select_not_default: true
},
month: {
required: true,
select_not_default: true
},
date: {
required: true,
select_not_default: true
}
},
messages: {
source: {
required: "This field is required",
select_not_default: "Choose any other value than default one."
},
destination: {
required: "This field is required",
select_not_default: "Choose any other value than default one."
},
month: {
required: "This field is required",
select_not_default: "Choose any other value than default one."
},
date: {
required: "This field is required",
select_not_default: "Choose any other value than default one."
}
},
submitHandler: function(form) {
alert("hi");
form.submit();
}
});