如何在网格视图中限制文本框模板字段文本长度

本文关键字:文本 字段 网格 视图 | 更新日期: 2023-09-27 18:22:07

            <asp:GridView ID="CommentGrid" GridLines="None" runat="server" AutoGenerateColumns="False">
            <Columns>
                <asp:BoundField HeaderText="No." DataField="Num" >
                    <HeaderStyle HorizontalAlign="Left" />
                </asp:BoundField>
                <asp:BoundField HeaderText="Subject Name" DataField="SubjectName">
                    <HeaderStyle HorizontalAlign="Left" />
                </asp:BoundField>
                <asp:TemplateField HeaderText="Comment">
                    <ItemTemplate>
                        <asp:TextBox ID="CommentBox" runat="server" TextMode="MultiLine" CssClass="commentTbx" MaxLength="2"></asp:TextBox>
                    </ItemTemplate>
                    <HeaderStyle HorizontalAlign="Left" />
                </asp:TemplateField>
            </Columns>
        </asp:GridView>

上面的最大长度="2"不起作用!!我什至尝试了其他方法,例如数据绑定,以及foreach循环对其进行编码,但仍然失败。

如何在网格视图中限制文本框模板字段文本长度

User RegularExpressionValidator.以下接受最少字符 0 和最多 2 个字符。

  <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" 
        ControlToValidate="CommentBox" ErrorMessage="Out of Range Max 2 Chars" 
        ValidationExpression=".{0,2}"></asp:RegularExpressionValidator>

最大长度在多行模式下不起作用。

是的,这是因为TextMode="MultiLine" .你需要一些javascript来检查总字符数并施加限制。

您是否尝试过<EditItemTeplate>而不是<ItemTemplate>