Jump to content

Validar campos numa ListView


dianaemanuel
 Share

Recommended Posts

Bom dia,

Eu tenho uma ListView com ligação a uma base de dados, com um botão inserir da própria listview.

E o que eu pretendia era que depois de o utilizador preencher as caixas de texto que estão na ListView, quando dessse um click no botão inserir queria que validasse as caixas de texto.

Por exemplo:

-> Um campo da tabela que é só pa inserir datas - se o utlizador colocar letras queria que mostrasse uma mensagem de erro a dizer que naquele campo só pode inserir data;

-> ou então inserir uma data tipo 130510 - e ele formatasse logo este número para o formato data 13-05-2010.

Isto foi um exemplo só para o campo tipo data, mas também queria para os campos do tipo int32 e decimal.

Os campos da base de dados já estão no tipo de dados correcto, e se inserir valores que não correspondem ao tipo do campo, é mostrada uma página de erro da base de dados, mas não era isso que eu pretendia, queria mesmo que mostrasse uma MsgBox a dizer que os dados não são válidos.

Eu estou a desenvolver uma página web e estpu a trabalhar com webforms na linguagem c#.

Gostaria de saber se isto é possivel fazer e em que evento da ListView.

Fico á espera.

Cumprimentos

dianaemanuel

Link to comment
Share on other sites

Olá novamente,

Já consegui fazer uma parte do que pretendia, aqui vai o código (este código está no source da página web):

<asp:TextBox ID="NomeEmpresaTextBox" runat="server" 
                            Text='<%# Bind("NomeEmpresa") %>'  ValidationGroup="edit"/>
                        <asp:RequiredFieldValidator ID="NomeEmpresaValidator" runat="server" ControlToValidate="NomeEmpresaTextBox" 
                            ErrorMessage="<div>O Nome da Empresa não pode estar vazio</div>" SetFocusOnError="true" 
                            Display="Dynamic" ValidationGroup="edit" />    

<asp:Button ID="UpdateButton" runat="server" CommandName="Update" 
                            Text="Update"  ValidationGroup="edit" />

Agora o que me fica a faltar é a parte da formatação.

Cumprimentos

dianaemanuel

Link to comment
Share on other sites

Boas,

Exactamente, Tens os validators que os podes usar em muito bem o que quiseres, Mesmo validar periodos de datas, Numeros, Expressões, depois adiccionas um validate group , para os validators ficarem associados a um só botão.

Cumprimentos Paulo Silva

Link to comment
Share on other sites

Bom dia,

Sim, também já encontrei sobre isso mas não estou a conseguir com que ele valide as datas e números do tipo decimal.

Já utilizei o seguinte código, mas não está a funcionar:

<asp:CustomValidator ID="cvFrom_Date" runat="server" ErrorMessage="Data e Hora Inválida" ControlToValidate="From_DateTextBox" 
                                    OnServerValidate="ValidateDate"  ValidationExpression="^(((0[1-9]|[12]\d|3[01])\/(0[13578]|1[02])\/((1[6-9]|[2-9]\d)\d{2}))|((0[1-9]|[12]\d|30)\/(0[13456789]|1[012])\/((1[6-9]|[2-9]\d)\d{2}))|((0[1-9]|1\d|2[0-8])\/02\/((1[6-9]|[2-9]\d)\d{2}))|(29\/02\/((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))))$">A Data precisa de ir no formato dd/MM/yyyy />

Este código não funciona dá me erro...já fiz várias pesquisas para validar datas através deste código e encontro quase tudo igual, mas não sei porque a mim dá me erro.

Cumprimentos

dianaemanuel

Link to comment
Share on other sites

Posso fazer assim?

<asp:RangeValidator ID="RVdata" runat="server" ErrorMessage="Apresente uma data válida"
                            MaximumValue="31-12-9999" MinimumValue="01-01-1900" ControlToValidate="DataTextBox" ValidationGroup="edit"/>

cumprimentos

dianaemanuel

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.