0

グリッドビューに問題があり、ValidationSummary エラーが表示されなくなりました。ValidationSummary の Headertext だけでなく、ExpressionValidation が起動するたびに表示されるように設定した * も表示されます。

以前は機能していたと確信していますが、なぜ機能しなくなったのかはわかりません。最初は、異なる TabPanels に 5 つの異なる GridView があるため、ページ上の他の GridViews と関係があるのではないかと考えましたが、GridView ごとに 1 つの検証グループを既に作成しています。

マークアップ:

<asp:UpdatePanel runat="server" UpdateMode="Always">
    <ContentTemplate>
       <asp:GridView ID="gvBBG" runat="server" AutoGenerateColumns="false" DataKeyNames="ID" SkinID="gvWithoutWidth">
         <Columns>
            <asp:TemplateField>
                <ItemTemplate>
                   <asp:ImageButton runat="server" ImageUrl="~/Images/GridView/gv_edit.png" CommandName="Edit"/>
                </ItemTemplate>
                <EditItemTemplate>
                   <asp:ImageButton runat="server" ImageUrl="~/Images/GridView/gv_cancel.png" CommandName="Cancel" CausesValidation="false"/>
                   <asp:ImageButton Id="ibUpdate" runat="server" ImageUrl="~/Images/GridView/gv_update.png" CommandName="Update"  CausesValidation="true"
                        ValidationGroup="UpdateBBG" Enabled="true" OnClientClick="return confirm('Datensatz einspielen/aktualisieren?')"/>
                </EditItemTemplate>
           </asp:TemplateField>
           <asp:TemplateField HeaderText="KV West" HeaderStyle-HorizontalAlign="Left">
               <EditItemTemplate>
                    <asp:TextBox ID="tbKVWest" runat="server" Text='<%# Bind("KVWestFormatted") %>' ValidationGroup="UpdateBBG" Width="50px" Height="15px"></asp:TextBox>
                     <asp:RequiredFieldValidator ID="rfvKVWest" ValidationGroup="UpdateBBG" runat="server"
                           ControlToValidate="tbKVWest" ErrorMessage="Bitte KVWest als Summe angeben"
                           SetFocusOnError="true">*</asp:RequiredFieldValidator> 
                      <asp:RegularExpressionValidator ID="revKVWest" ValidationGroup="UpdateBBG" runat="server"
                           ValidationExpression="^[0-9]{1,9}((\,)[0-9]{1,2})?$" ControlToValidate="tbKVWest" SetFocusOnError="true">*</asp:RegularExpressionValidator>
              </EditItemTemplate>
              <ItemTemplate>
                  <%# Eval("KVWestFormatted")%>
              </ItemTemplate>
        </asp:TemplateField>
....
      </Columns>
          <EmptyDataTemplate>Keine Daten vorhanden</EmptyDataTemplate>
  </asp:GridView>
      <p>
            <asp:ValidationSummary ID="vsUpdate3" runat="server" ShowMessageBox="true" ShowSummary="true" ValidationGroup="UpdateBBG" Font-Bold="true" ForeColor="Red" 
                 EnableClientScript="true" Enabled="true" HeaderText="Validierung..." />
      </p>

あなたたちがここで私を助けてくれたらいいのに。何が問題なのかよくわかりません..多分それはUpdatePanelですか?たぶん私はいくつかの愚かな間違いを犯した..?私はむしろ無知です。

4

2 に答える 2

1

ボタン検証グループは更新されていますが、他のすべてには検証グループupdatebbgがあるため、urボタンの検証グループをupdatebbgに変更してください

于 2013-03-20T08:53:16.127 に答える
0

見つかった問題.. RequiredFieldValidator と RegularExpressionValidator の両方にエラー メッセージを設定する必要があります。;) ところで、テキストボックス内に検証グループは必要ありません。

于 2013-03-20T12:45:59.227 に答える