現在、jQuery検証プラグインは、選択したタブのみを検証します。だから、すべてのタブが、私はjQueryフォーム送信時にすべてのタブを検証する
$("form").validate({
....
....
ignore:"ui-tabs-hide"
});
属性無視導入しかし、これを与えた後、それも隠しフィールドを検証し、検証することにします。各タブの隠しフィールドだけを無視して、すべてのタブのフィールドを検証する方法はありますか?
HTML
<div id="tabs">
<%@include file="inc/tabsList.jsp" %> <!--has <a> link for each div -->
<div id="fragment-1"><%@include file="inc/tradeDetails.jsp" %></div>
<div id="fragment-2"><%@include file="inc/beneficiaryDetails.jsp" %></div>
<div id="fragment-3"><%@include file="inc/referenceDetails.jsp" %></div>
<div id="fragment-4"><%@include file="inc/summary.jsp"%></div>
<div class="clear"></div>
</div>
はJavaScript
$(function() {
var hiddenChevron;
var $tabs = $('#tabs').tabs();
$("#fWdErrors_940").hide();
$("#singleSpotForm").validate({
rules: {
'singleSpotRequestVO.entity.entityName' : "required",
'singleSpotRequestVO.subEntity.entityName' : "required",
'singleSpotRequestVO.transactionType' : "required",
'singleSpotRequestVO.tradeCurrencyId' : "required"
},
errorContainer: 'fWdErrors_940',
errorClass: "errorMsgItemText",
errorPlacement: function(error, element) {
error.appendTo(element.parent("td").last());
},
invalidHandler: function(form, validator) {
var errors = validator.numberOfInvalids();
if(errors){
var message = validator.numberOfInvalids() == 1 ?
validator.numberOfInvalids() + " error " :
validator.numberOfInvalids() + " errors ";
$(".failureErrCount").html(message);
$("#fWdErrors_940").show().focus();
}else{
$("#fWdErrors_940").hide();
}
},
onkeyup : false,
ignore: "ui-tabs-hide"
});
})
限り、すべての入力要素が一つの形態であるように、検証プラグインはまだそれらを確認する必要があります。 HTMLのサンプルを投稿できますか? –