检查验证器后打印页面

时间:2014-06-20 15:09:46

标签: c# asp.net

我希望在按钮上单击它检查第一个验证器然后执行打印命令 这是我的ASPX代码:

<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" Runat="Server">
<style type="text/css">
    .style1
    {
    }

    @media print
    {
        .header, .style1, .footer,.hide
        {
            display:none
        }
    }
</style>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" Runat="Server">
    <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
    <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TextBox1"
        ErrorMessage="RequiredFieldValidator" style="color: #FF0000"></asp:RequiredFieldValidator>
    <br />
    <asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="window.print();" />
</asp:Content>

问题是当我点击按钮时它执行打印功能并且不检查验证器。

2 个答案:

答案 0 :(得分:0)

JavaScript OnClientClick将在您的页面验证之前触发。您可以在打印前尝试验证页面。

function Validate() {
    if(Page_ClientValidate())
        window.print();
}

然后这样称呼它。

<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="Validate();" />

答案 1 :(得分:0)

将按钮的 CausesValidation 属性设置为true!