在文本框中,用户不能连续输入15位数字,mvc3

时间:2018-03-09 06:36:40

标签: asp.net-mvc-3 data-annotations

我们的情况是用户无法在文本框中输入15个连续数字(即411111111111111),因此我们使用mvc中的数据注释验证它?

2 个答案:

答案 0 :(得分:1)

您可以使用df = df.set_index('Placement# Name') df['Date'] = df['Date'].dt.strftime('%M-%d-%Y') df_sub = df[['Delivered Impressions','Clicks','Conversion','Spend']].sum(level=0)\ .assign(Date='Subtotal') df_sub['CTR'] = df_sub['Clicks'] / df_sub['Delivered Impressions'] df_sub['eCPA'] = df_sub['Spend'] / df_sub['Conversion'] df_out = pd.concat([df, df_sub]).set_index('Date',append=True).sort_index(level=0) startline = 0 writer = pd.ExcelWriter('testxls.xlsx', engine='openpyxl') for n,g in df_out.groupby(level=0): g.to_excel(writer, startrow=startline, index=True) startline += len(g)+2 writer.save() 属性来提供客户端和服务器端验证

[ReqularExpression]

否定前瞻 - [RegularExpression(@"^((?!\d{15}).)*$)", ErrorMessage = "The value cannot contain 15 or more consecutive digits")] public string YourProperty { get; set; } - 指定如果有15个(或更多)连续数字,则匹配将被丢弃且无效。

请参阅RegExr以获取有关正则表达式和一些测试用例的更详细说明(为简单起见,使用3位数字)。

答案 1 :(得分:0)

如果文本框不是多行,请尝试设置其MaxLength属性:

<asp:TextBox ID="tb1" runat="server" MaxLength="15"></asp:TextBox>

编辑:由于您的最大长度为50,并且您想要检查是否输入了15个连续数字,您可以尝试使用&#39;按键&#39;事件:

<script type="text/javascript"> 
    $(function () { 
        $("#<%=tb1.ClientID %>").keypress(function () { 
            /* check here if the textbox' data is valid */
        }); 
    });
</script> 

虽然

,但它不会帮助您复制/粘贴操作