jQuery Doğrulama eklentisi: belirtilen doğrulama devre dışı bırakmak için düğmeleri gönder
Jörn Zaeffere mükemmel jQuery Doğrulama eklentisi ile doğrulama olduğumu birden çok alan içeren bir form (yöntemleri özel doğrulama için ilave bazı) var. Nasıl belirtilen doğrulama kontrolleri (diğer bir deyişle, bazı yangın doğrulama girişleri göndermek, ama diğerleri ile doğrulama ateş etmeyin) teslim atlatmak mı? Bu standart ASP.NET doğrulama denetimleri ile ValidationGroups benzer olacaktır.
Durumum:
Bu ASP.NET WebForms ile, ama eğer isterseniz yok sayabilirsiniz. Ancak, ben kullanarak doğrulama daha fazla olarak bir "tavsiye": diğer bir deyişle, ne zaman şeklidir gönderilen, doğrulama patlar ama yerine bir "gerekli" iletisi görüntüleniyor, bir "tavsiye" gösteren bir şey söylüyor hat boyunca "seni özledim aşağıdaki alanlar.... neyse devam etmek istiyor musunuz?" Hata kap içinde bu noktada baskı görebilir düğmesi artık görünür onun doğrulama yok sayıp neyse sunacağını olan başka bir şey var. Nasıl formları atlatmak için .doğrulamak için bu düğmeyi kontrol ve hala post?
http://jquery.bassistance.de/validate/demo/multipart/ Evde bir örnek olmak üzere, bir önceki bağlantıları vurmak için izin verir, ama çok özel yöntemler oluşturma ve doğrulama ekleme ile Satın almak ve Satmak. Özel yöntemler zaten doğrulama eklentisi işlevselliğini çoğaltmak oluşturmak zorunda değil tercih ederim.
Aşağıdaki şu an sahip olduğum hemen ilgili yazısının kısaltılmış bir versiyonu:
var container = $("#<%= Form.ClientID %> div.validationSuggestion");
$('#<%= Form.ClientID %>').validate({
errorContainer: container,
errorLabelContainer: $("ul",container),
rules: {
<%= YesNo.UniqueID %>: { required: true },
<%= ShortText.UniqueID %>: { required: true } // etc.
},
messages: {
<%= YesNo.UniqueID %>: 'A message.',
<%= ShortText.UniqueID %>: 'Another message.' // etc.
},
highlight: function(element, errorClass) {
$(element).addClass(errorClass);
$(element.form).find("label[for=" element.id "]").addClass(errorClass);
$(element.form).find("label[for=" element.id "]").removeClass("valid");
},
unhighlight: function(element, errorClass) {
$(element).removeClass(errorClass);
$(element.form).find("label[for=" element.id "]").removeClass(errorClass);
$(element.form).find("label[for=" element.id "]").addClass("valid");
},
wrapper: 'li'
});
Yararlı işaretçiler için şimdiden çok teşekkürler.
[GÜNCELLEME] Sınıf ekleme kadar kolay olduğunu keşfettim redsquare için sağol="iptal" Gönder düğmesini. Çok kolay ama benim aramaya karşıya gelmedim nasıl hiçbir fikrim yok.
Ve için o kim ki benim takip cevap ile ilgili "gerektirir" bir çift": bu sadece nedeniyle artık deney hattı oldu yığınının olay yine benim bilmediğim bir şey nasıl Gözden kaçırmışım ne zaman test. Teşekkürler!
CEVAP
İptal etmek için bir css sınıf bir düğme doğrulama bastırmak için göndermek için ekleyebilirsiniz
e.g
<input class="cancel" type="submit" value="Save" />
Bu özellik, burada bir WordPress kullanmak Doğrulayıcı belgelere bakın: Skipping validation on submit
/Devre dışı bırakmak için en kolay yol...
Nasıl jQuery kullanarak metin seçimi d...
JQuery UI Datepicker Cumartesi ve paza...
Nasıl ya da çapa jQuery kullanarak dev...
Devre dışı bırakmak XML doğrulama Ecli...