Validação asp.net para garantir que a checkbox de texto tenha valores inteiros

Eu tenho uma configuração de validação necessária em uma checkbox de texto, mas também tenho que ter certeza de que é um número inteiro.

Como posso fazer isso?

Se tudo o que você está preocupado é que o campo contém um inteiro (isto é, não relacionado a um intervalo), adicione um CompareValidator com sua propriedade Operator definida como DataTypeCheck :

  

Se houver um intervalo específico de valores que são válidos (provavelmente existem), então você pode usar um RangeValidator , da seguinte forma:

  

Estes só validarão se houver texto no TextBox, então você precisará manter o RequiredFieldValidator lá também.

Como disse @Mahin , certifique-se de verificar a propriedade Page.IsValid no lado do servidor, caso contrário, o validador só funciona para usuários com JavaScript habilitado.

Isso funciona bem para mim:

 *  

Eu acho que você deve adicionar ValidationGroup="NumericValidate" ao seu botão de envio também.

Use Int32.TryParse.

  int integer; Int32.TryParse(Textbox.Text, out integer) 

Ele retornará um bool para que você possa ver se eles inseriram um inteiro válido.

Anexe um Validador de Expressões Regulares à checkbox de texto e faça a sua expressão ser esta:

 ^\d+$ 

E faça a validação do lado do servidor também, é claro.

Existem várias maneiras diferentes de lidar com isso. Você pode adicionar um RequiredFieldValidator, bem como um RangeValidator (se isso funciona para o seu caso) ou você pode adicionar um CustomFieldValidator.

Link para o CustomFieldValidator: http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.customvalidator%28VS.71%29.aspx

Link para o artigo do MSDN sobre validação do ASP.NET: http://msdn.microsoft.com/pt-br/library/aa479045.aspx

http://msdn.microsoft.com/pt-br/library/ad548tzy%28VS.71%29.aspx

Ao usar os controles do validador do servidor, você deve ter cuidado com o fato de que qualquer um pode desabilitar o javascript em seu navegador. Portanto, você deve usar a propriedade Page.IsValid sempre no lado do servidor.

   

Você pode usar o script java para isso:

  

O Visual Studio agora tem suporte integrado para verificação de intervalo e verificação de tipo:

Tente isto: – Para VERIFICAÇÃO DE ALCANCE Antes de validar / verificar um determinado intervalo de números Ative a exibição de design da visualização de marcação.

Ver> Caixa de Ferramentas> Validação

Agora, arraste o RangeValidator para a sua página de design, onde você deseja mostrar a mensagem de erro (é claro, se o usuário está inserindo o valor fora do intervalo), agora clique no seu controle RangeValidator. Clique com o botão direito e selecione as propriedades. Na janela Propriedades (geralmente é aberta abaixo da barra de soluções), selecione MENSAGEM DE ERRO. Escreva :-

Número deve estar no intervalo.

Agora selecione Control para validar e selecione seu TextboxID (ou escreva-o de qualquer maneira) a partir do menu suspenso.Locate Digite na própria barra de propriedades e selecione abaixo Integer.
Logo acima, você encontrará o valor máximo e mínimo. Digite o número desejado.

Para verificação de tipo (sem intervalo)
Antes de validar / verificar um determinado intervalo de números Ative a exibição de design da visualização de marcação.

Ver> Caixa de Ferramentas> Validação

Agora, arraste o CompareValidator para a sua página de design onde você deseja mostrar a mensagem de erro (é claro, se o usuário estiver inserindo algum texto). Agora clique no seu controle CompareValidator. Clique com o botão direito e selecione as propriedades. Na janela Propriedades (geralmente é aberta abaixo da barra de soluções), selecione MENSAGEM DE ERRO. Escreva:-

O valor deve ser um número.

Agora localize a opção ControltoValidate e escreva seu nome controlID nele (alternativamente você também pode selecionar a partir do menu suspenso) .Localize a opção Operator e escreva DataTypeCheck (alternativamente, você também pode selecionar a partir da lista suspensa) nele. Novamente localize a opção Type e escreva Integer nisso .

Isso é sentar.

Em alternativa, pode escrever o seguinte código na sua página aspx: – <% - para validar sem intervalo -%>

Clique duas vezes no botão e use o seguinte código: –

 protected void button_click(object sender,EventArgs e) { int parsedValue; if(int.TryParse(!txt.Text,out parsedValue)) { Label.Text = "Please specify a number only !!"; //Will put a text in a label so make //sure //you have a label } else { // do what you want to }