验证控件中的格式问题

时间:2011-10-22 20:34:25

标签: asp.net

我在一个文本框中使用了多于1个验证,如果没有通过第一个验证,那么第二个验证显示在第一个验证器的一些空白之后。在我的电子邮件文本框项目中我是使用两个验证requiredfield和正则表达式,但我的正则表达式验证器没有显示在正确的位置。我尝试了css即左边距,但这对我不起作用。 my issue is shown in pic 我的代码是                                            名字                                                                                                                         姓                                                                                                                         电子邮件ID                                                                             

        &nbsp;&nbsp;</td>
    </tr>
    <tr>
        <td>
            User Id
        </td>
        <td>
            <asp:TextBox ID="TextBox7" runat="server" EnableViewState="true" Height="22px" Width="189px"></asp:TextBox>
            <asp:RequiredFieldValidator ID="RequiredFieldValidator4"  runat="server" 
                ControlToValidate="TextBox7" 
                ErrorMessage="It is a mandatory field Can't be left blank" ForeColor="#FF3300"></asp:RequiredFieldValidator>

        </td>
        </tr>
    <tr>
        <td>
            Password
        </td>
        <td>
            <asp:TextBox ID="TextBox4" runat="server" EnableViewState="true" TextMode="Password" Height="22px" Width="189px"></asp:TextBox>
            <asp:RequiredFieldValidator ID="RequiredFieldValidator5"  runat="server" 
                ForeColor="#FF3300" ControlToValidate="TextBox4" ErrorMessage="It is a mandatory field Can't be left blank"></asp:RequiredFieldValidator>
        </td>
    </tr>
    <tr>
        <td>
            Full Address
        </td>
        <td>
            <asp:TextBox ID="TextBox5" runat="server" Height="64px" TextMode="MultiLine" Width="189px"></asp:TextBox>
            <asp:RequiredFieldValidator  ID="RequiredFieldValidator6" runat="server" 
                ForeColor="#FF3300" ControlToValidate="TextBox5" ErrorMessage="It is a mandatory field Can't be left blank"></asp:RequiredFieldValidator>
        </td>
    </tr>
    <tr>
        <td>
            Mobile No.
        </td>
        <td>
            <asp:TextBox ID="TextBox6" runat="server"></asp:TextBox>
            <asp:RequiredFieldValidator ID="RequiredFieldValidator7" runat="server" 
                ForeColor="#FF3300" ControlToValidate="TextBox4" ErrorMessage="It is a mandatory field Can't be left blank"></asp:RequiredFieldValidator>
            <asp:RangeValidator ID="RangeValidator1" runat="server" 
               ForeColor="#FF3300" ControlToValidate="TextBox6" ErrorMessage="Not in the correct format" 
                MaximumValue="9999999999" MinimumValue="1000000000"></asp:RangeValidator>
        </td>
    </tr>
</table>

    <asp:ImageButton ID="ImageButton1" runat="server" 
        ImageUrl="~/img/str/buttons/submit_blue.png" onclick="ImageButton1_Click" />

2 个答案:

答案 0 :(得分:11)

尝试将验证者的显示属性设置为动态。该属性的默认值为 Static ,这意味着验证者的html使用 visibility:hidden css规则呈现,而使用Dynamic时,它会获得 display:none css规则。 visibility:hidden css规则将留空空格代替元素, display:none 不会。

答案 1 :(得分:-1)

你应该划分数据和验证器的部分。表格将是正常的或div部分

enter image description here

正如你所看到的 - 如果你把一张桌子放在td&#39; s所以每一方都有自己的td。所以当断裂线发生时,新线将位于第一条线下方 此外,你必须在html里面为红线做一些float:left

以同样的方式,你可以使用固定宽度的div。