2012-01-11 22 views
13

Tengo una asp:textbox con las dos validadores requeridos y alcance que se le atribuye, en el que el código es el siguiente:asp.net gama de validación de cuadro de texto

ASP:

<asp:TextBox ID="textBox1" runat="server" CausesValidation="true"></asp:TextBox> 
<asp:RangeValidator ID="rangeValidator1" runat="server" ControlToValidate="textBox1" MaximumValue="1" MinimumValue="0" 
    ValidationGroup="valid" ForeColor="Red" ErrorMessage="Out of Range" /> 
<asp:RequiredFieldValidator ID="requiredValidator1" runat="server" ControlToValidate="textBox1" 
    ValidationGroup="valid" ForeColor="Red" ErrorMessage="Cannot be blank" /> 

Y cuando la página es dinámicamente cargado (después de una devolución de llamada rápida), tengo un código que se supone que cambia el MaximumValue del RangeValidator a un valor más específico. Aquí está el código para que:

rangeValidator1.MaximumValue = GetMaxValue(params).ToString(); 

Ahora, tengo un punto de ruptura, y rangeValidator1.MaximumValue está siendo ajustado correctamente, sin embargo, cuando se carga la página, y me mira el JavaScript del lado del cliente compilado, parece que la el valor máximo sigue siendo solo 1.

Lo que más me confunde es que cualquier entero ingresado pasará, siempre y cuando el primer dígito sea '1'. Por lo tanto, si maxValue es supuesto que es algo así como "1234567", "1" coincidirá, al igual que "12345678910". Pero "2" no lo hará. Tampoco "3000" o "46000".

¿Alguien más ha tenido un problema similar con RangeValidators en los cuadros de texto?

+1

textbox1 no parece estar en el mismo ValidationGroup y el id es textBox1 (observe la letra B mayúscula) ¿Es solo un error aquí? –

+1

Además, ¿RangeValidator no tiene un campo Tipo? –

+0

con respecto a tu primer comentario, lo siento, fue un error tipográfico. Cambié las identificaciones cuando copié el código en SO para que fuera más fácil de leer. Ellos * hacen * coinciden. –

Respuesta

19

El RangeValidator maneja la validación para varios tipos. Debe asegurarse de establecer el tipo en entero. o lo que sea apropiado

Cuestiones relacionadas