Sorun:
Ben Jquery doğrulama eklentisi kullanarak bazı ASP.NET-onay kutularını doğrulamak istiyor (: bulunan http://bassistance.de/jquery-plugins/jquery-plugin-validation/ )
tüm hakkında ne:
Bu ASP.NET onay kutularının adı özniteliği ayarlamak mümkün değildir (veya öyle?). Kontrol oluşturulur ve kullanılarak alınabilir olduğunda otomatik olarak, set olacak
<%= emailCheckBox.UniqueID %>
Aşağıdaki Yani iki onay kutularını:
<asp:CheckBox runat=server ID=emailAcceptCheckBox />Email<br />
<asp:CheckBox runat=server ID=phoneAcceptCheckBox />Phone<br />
render edecektir:
<INPUT id=ctl00_MainContentPlaceHolder_emailAcceptCheckBox type=checkbox name=ctl00$MainContentPlaceHolder$emailAcceptCheckBox>
<INPUT id=ctl00_MainContentPlaceHolder_phoneAcceptCheckBox type=checkbox name=ctl00$MainContentPlaceHolder$phoneAcceptCheckBox>
Belki Jquery doğrulama eklentisi ile ASP.NET karıştırmak Felaket, ama jquery doğrulama eklentisi tercih ve girişler ve diğer alanları ile çalışıyor.
Sorun jQuery doğrulama eklentisi onay kutularının isim özelliğini kullanarak gruba onay kutularını istediği vardır. Bu isim özellikler tüm onay kutularını ve bir gruba eşit olmalıdır.
Yaptığım Ne:
Jquery kullanarak TÜM onay kutularına bir kural eklendi:
$(#[id*='AcceptCheckBox']).each(function() { $(this).rules(add, { minchecked: 1 }); });
Ve işaret kutusu denetimi kendi kural ekledi:
jQuery.validator.addMethod(minchecked,
function(value, element, param) {
var noOfChecked = $(#[id*='AcceptCheckBox']:checked).length;
return noOfChecked >= param;
},
Error);
(Bu kural kimin kimlikleri AcceptCheckBox dahil işaret kutusu geçerli olacaktır, ancak bu örnekte tamam).
Ne zaman diyoruz:
var result = $(#aspnetForm).validate().form();
Benim doğrulama başarılı veya başarısız olursa mükemmel döner!
FAKAT:
1) Ben bu çok temiz ve güzel bir çözüm olduğunu hissetmiyorum. -Daha iyi tavsiye?
2) validate çalıştırdığınızda (). Formu () TÜM benim onay kutuları geçmesi ve bunların her biri için diğer tüm onay kutularını kontrol edeceğiz. Bu gerçekten gerekli değil. Bunu nasıl önleyebilirsiniz?













