I am not 100% sure, but the check summary that I can find in the default MVC 3 application is on the Form. Perhaps because your validation summaries are outside the form, they are not updated. What happens when you move a validation summary on a form?
From:
@Html.ValidationSummary(false)
@Html.ValidationSummary(true, "xxx")
@using (Ajax.BeginForm(
action,
"Menus",
null,
new AjaxOptions
{
UpdateTargetId = "update-message",
InsertionMode = InsertionMode.Replace,
HttpMethod = "POST",
OnSuccess = success
}, new { @id = "menuForm" }))
{
<dl>
<dt>@Html.LabelFor(model => model.Order)</dt>
<dd>@Html.TextBoxFor(model => model.Order)</dd>
<dd>@Html.ValidationMessageFor(model => model.Order)</dd>
</dl>
To:
@using (Ajax.BeginForm(
action,
"Menus",
null,
new AjaxOptions
{
UpdateTargetId = "update-message",
InsertionMode = InsertionMode.Replace,
HttpMethod = "POST",
OnSuccess = success
}, new { @id = "menuForm" }))
{
@Html.ValidationSummary(false)
@Html.ValidationSummary(true, "xxx")
<dl>
<dt>@Html.LabelFor(model => model.Order)</dt>
<dd>@Html.TextBoxFor(model => model.Order)</dd>
<dd>@Html.ValidationMessageFor(model => model.Order)</dd>
</dl>