Сводка проверки ASP.NET внутри формы не работает - PullRequest
1 голос
/ 27 января 2011

У меня есть сводка проверки в виде формы asp.net, и валидаторы просто не вызывают сводку валидации.

То, что я уже пробовал:

  • Включить ViewState для всего.
  • Установите для ClientID статическое значение.
  • Установите группу ValidationGroup в одну группу на всех валидаторах и в сводке.
  • Использовал Google для поиска решения.

У кого-нибудь есть идеи, как с этим справиться?

код. Декларация формы:

<asp:FormView ID="FormViewPerson" runat="server" DataSourceID="ObjectDataSourcePerson"
    DefaultMode="Edit" OnItemUpdating="FormViewPerson_ItemUpdating" OnItemCommand="FormViewPerson_ItemCommand"
    OnItemUpdated="FormViewPerson_ItemUpdated" Width="100%">

Любое из текстовых полей с валидатором:

<td>  <asp:TextBox ID="NumberTextBox" runat="server" Text='<%# Bind("Number") %>' 
                        TabIndex="10" CausesValidation="True" ClientIDMode="Static" />
                    <asp:RequiredFieldValidator ID="RequiredFieldValidatorNumber" runat="server" ControlToValidate="NumberTextBox"
                        ErrorMessage="Number is Required" ForeColor="Red" 
                        ValidationGroup="EditPerson">*</asp:RequiredFieldValidator>
                </td>

И кнопка отправки:

<asp:ValidationSummary ID="ValidationSummaryPerson" runat="server" 
            ForeColor="Red" ClientIDMode="Static" CssClass="validation" 
            ShowMessageBox="True" ValidationGroup="EditPerson" ViewStateMode="Enabled"
            />
        <asp:Button ID="UpdateButton" runat="server" CausesValidation="True" CommandName="Update"
            Text="Save" ValidationGroup="EditPerson" CssClass="ButtonStyle" TabIndex="90" />
        &nbsp;<asp:Button ID="EditCancelButton" runat="server" CausesValidation="False" CommandName="Cancel"
            Text="Cancel" CssClass="ButtonStyle" TabIndex="100" 
            ValidationGroup="EditPerson" />

Ответы [ 2 ]

1 голос
/ 27 января 2011

Надеюсь, что CausesValidation для кнопки установлено в true.

0 голосов
/ 27 января 2011

Ну, я исправил проблему.Если кто-то еще сталкивается с этой проблемой, попробуйте следующее:

  • Убедитесь, что во всей форме есть только одна (1) группа проверки.
  • Установите для «validvalidation» значение «true» наsubmitbutton.
  • Проверка, двойная проверка и тройная проверка правописания вашего свойства validationgroup на всех соответствующих элементах управления.
  • Следите за ошибками JavaScript в ваших клиентских скриптах.Они могут вызвать хаос.
...