Разделите ваши элементы управления на 2 деления, затем используйте JavaScript для управления валидаторами.
Скажем, нажмите «Добавить», чтобы включить валидаторы для добавления, нажмите «обновить», а затем просто включите валидаторы для обновления.
Я написал код js, который, кажется, может удовлетворить ваши запросы.
Итерируйте валидаторы и включите их вам.
затем очистите экран, сотрите информацию об ошибке.
$(function() {
hidedivTemplate();
});
function hidedivTemplate() {
$('#divTemplate').hide();
$('#divAuto').show();
goThroughValidators(enableAutoDIV_Validation);
}
function hidedivAuto() {
$('#divAuto').hide();
$('#divTemplate').show();
goThroughValidators(enableTemplateDIV_Validation);
}
function goThroughValidators(func) {
for (i = 0; i < Page_Validators.length; i++) {
var validator = Page_Validators[i];
func(validator);
}
//After the iteration, clean the error info on the screen
$("span[class='errorleft']").hide();
}
function enableAutoDIV_Validation(validatorObj) {
switch (validatorObj.controltovalidate) {
case "<%=AAA.ClientID%>":
case "<%=BBB.ClientID%>":
ValidatorEnable(validatorObj, true);
break;
default:
ValidatorEnable(validatorObj, false);
break;
}
}
function enableTemplateDIV_Validation(validatorObj) {
switch (validatorObj.controltovalidate) {
case "<%=CCC.ClientID%>":
case "<%=DDD.ClientID%>":
ValidatorEnable(validatorObj, true);
break;
default:
ValidatorEnable(validatorObj, false);
break;
}
}
Полный фрагмент кода можно найти здесь http://codelife.cybtamin.com/2012/08/enable-and-disable-asp-net-validator-by-javascript/