سؤال

أحاول تحديد النطاق من 4 إلى 13.لكنه يحافظ على خطأ "لا يمكن أن يكون الحد الأقصى القيمة 13 أقل من الحد الأدنى من القيمة 4 من RangeValidator1." كيف يمكنني حل هذا.هذا هو الكود الخاص بي:


     <asp:TextBox ID="TextBox2" runat="server" ValidationGroup="Group1"></asp:TextBox>
     <asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" 
                ControlToValidate="TextBox2" ErrorMessage="กรุณากรอก Password" ForeColor="Red" 
                ValidationGroup="Group1">*</asp:RequiredFieldValidator>
     <asp:RangeValidator ID="RangeValidator1" runat="server"
                ControlToValidate="TextBox2" 
                ErrorMessage="Password ต้องมีความยาวตั้งแต่ 4-13 ตัวอักษร" ForeColor="Red" 
                MaximumValue="13" MinimumValue="4" Type="String" EnableClientScript="false">*</asp:RangeValidator>

هذا هو الكود الموجود في الزر:


    protected void Button2_Click1(object sender, EventArgs e)
    {
        try
        {
            if (Page.IsValid)
            {

            }
            else
            {
                Insert();
            }
        }
        catch (Exception ex)
        {

        }
    }

أي مساعدة موضع تقدير.

هل كانت مفيدة؟

المحلول

rangevalidator يتحقق قيمة عنصر التحكم، وليس طول القيمة.بالنسبة لمقارنة السلسلة "13" أقل من "4"، لذلك يمكنك الحصول على خطأ "Max

يجب عليك استخدام regularexpressionatorator للتحقق من طول الإدخال:

giveacodicetagpre.

نصائح أخرى

اضبط النوع Integer عند استخدام RangeValidator لقيم النوع الصحيح.

<asp:RangeValidator ID="RangeValidator1" runat="server"
                ControlToValidate="TextBox2" 
                ErrorMessage="Password ต้องมีความยาวตั้งแต่ 4-13 ตัวอักษร" ForeColor="Red" 
                MaximumValue="13" MinimumValue="4" Type="Integer" EnableClientScript="false">*</asp:RangeValidator>

لكنني مندهش أنك تستخدم RangeValidator مع حقل كلمة المرور.في هذه الحالة، أنت تقيد المستخدم لوضع القيمة بينهما 4-13.ربما تريد التحقق من طول الإدخال.لذلك يمكنك استخدام مدقق التعبير العادي.

<asp:RegularExpressionValidator ID="RegexVal" ValidationExpression="^.{4,13}$"  runat="server" ErrorMessage="Password must be 4-13 character long" ControlToValidate="TextBox2"  />

يتم تعيين نوع البيانات المحدد، حاليا، على السلسلة."4" أكبر من "13"، ولهذا السبب تحصل على مثل هذا الخطأ.تغيير وسيطة النوع في عنصر التحكم إلى عدد صحيح وينبغي أن تعمل.

يجب أن يكون النوع عددا صحيحا بدلا من السلسلة

giveacodicetagpre.

قام Google بترجمة رسالة الخطأ أدناه. يجب أن تتكون كلمة المرور من 4-13 حرفا.

pashapash 'الإجابة https://stackoverflow.com/a/21060857/263003 هو الصحيح

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top