在c#中显示消息

时间:2015-09-07 17:19:59

标签: c# asp.net

我是C#,ASP.NET的初学者。 我想要的是点击提交'按钮,需要显示消息'您的注册成功'。 但是当我点击这里时,没有任何显示,但它在其他电脑上显示相同代码的消息。 有人可以帮帮我吗?我的项目中有任何配置错误吗?

代码在这里:

<form id="form1" runat="server">
    <div>

    </div>
    <table class="style1">
        <tr>
            <td class="style3">
                Username</td>
            <td class="style6">
                <asp:TextBox ID="uname" runat="server" Width="180px"></asp:TextBox>
            </td>
            <td class="style8">
                <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" 
                    ControlToValidate="uname" ErrorMessage="Username is required" ForeColor="Red"></asp:RequiredFieldValidator>
            </td>
        </tr>
        <tr>
            <td class="style3">
                Email</td>
            <td class="style6">
                <asp:TextBox ID="email" runat="server" Width="180px"></asp:TextBox>
            </td>
            <td class="style8">
                <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" 
                    ControlToValidate="email" ErrorMessage="Email is required" ForeColor="Red"></asp:RequiredFieldValidator>
                <br />
                <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" 
                    ControlToValidate="email" ErrorMessage="You must enter the valid email id" 
                    ForeColor="Red" 
                    ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"></asp:RegularExpressionValidator>
            </td>
        </tr>
        <tr>
            <td class="style3">
                Password</td>
            <td class="style6">
                <asp:TextBox ID="pass" runat="server" TextMode="Password" Width="180px"></asp:TextBox>
            </td>
            <td class="style8">
                <asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" 
                    ControlToValidate="pass" ErrorMessage="Password is required" ForeColor="Red"></asp:RequiredFieldValidator>
            </td>
        </tr>
        <tr>
            <td class="style3">
                Confirm Password</td>
            <td class="style6">
                <asp:TextBox ID="passr" runat="server" TextMode="Password" Width="180px"></asp:TextBox>
            </td>
            <td class="style8">
                <asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" 
                    ControlToValidate="passr" ErrorMessage="Confirm password is required" 
                    ForeColor="Red"></asp:RequiredFieldValidator>
                <br />
                <asp:CompareValidator ID="CompareValidator1" runat="server" 
                    ControlToCompare="pass" ControlToValidate="passr" 
                    ErrorMessage="Both passwords must be same" ForeColor="Red"></asp:CompareValidator>
            </td>
        </tr>
        <tr>
            <td class="style3">
                Country</td>
            <td class="style6">
                <asp:DropDownList ID="country" runat="server" Width="180px">
                    <asp:ListItem>Select Country</asp:ListItem>
                    <asp:ListItem>USA</asp:ListItem>
                    <asp:ListItem>UK</asp:ListItem>
                    <asp:ListItem>GERMANY</asp:ListItem>
                    <asp:ListItem>FRANCE</asp:ListItem>
                    <asp:ListItem>INDIA</asp:ListItem>
                </asp:DropDownList>
            </td>
            <td class="style8">
                <asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" 
                    ControlToValidate="country" ErrorMessage="Select a country name" 
                    ForeColor="Red" InitialValue="Select Country"></asp:RequiredFieldValidator>
            </td>
        </tr>
        <tr>
            <td class="style4">
            </td>
            <td class="style7">
                <asp:Button ID="submit" runat="server" Text="Submit" />
            </td>
            <td class="style5">
                <input id="Reset1" type="reset" value="reset" /></td>
        </tr>
        <tr>
            <td class="style2">
                &nbsp;</td>
            <td class="style6">
                &nbsp;</td>
            <td>
                &nbsp;</td>
        </tr>
    </table>
    </form>

}

ASP.NET

<!doctype html>
<html>
    <head>
        <?php include($_SERVER['DOCUMENT_ROOT']."/PATH-TO-FILE/head.php"); ?>
    </head>

    <body>
        ...
    </body>
</html>

3 个答案:

答案 0 :(得分:2)

您需要了解服务器端和客户端之间的区别。

服务器端是服务器上发生的所有事情(例如ASP,ASP.NET,PHP),用于创建发送到浏览器的HTML。它还处理用户提交内容(回发后)时浏览器返回的信息。

客户端是收到HTML后在浏览器上发生的所有事情,或者用户在页面上执行某些操作(如单击元素)。

您正在尝试在服务器上运行Windows应用程序样式MessageBox.Show ......这样做无法正常运行。

如果您希望浏览器显示&#34;警告&#34;窗口(有点像MessageBox)然后您需要将客户端脚本发送到浏览器。试试这个......

protected void submit_Click(object sender, EventArgs e)
{
    Response.Write("Your registration is succesful");
    var script = "window.alert('Test Display');";
    ClientScript.RegisterStartupScript(this.GetType(), "message", script, true);
}

根据OP的评论......

  

我的问题是Response.Write(&#34;您的注册成功&#34;);不工作

而不是使用Response.Write使用<asp:Literal>控件(这使您可以将控件准确定位到您需要的位置)并设置它的.Text属性(请记住这一点将保留在回发后,因此您可能需要清除它。)

您还可以使用<asp:Label>,这不仅可以让您定位,还可以包含.CssClass.Style属性,以便更好地进行格式化。

答案 1 :(得分:1)

如果要显示确认消息框,请尝试在.aspx页面上使用jquery。你可以添加这样的功能

function confirmationAccept() {
    return confirm("Accept?");
}

然后在onclient上单击添加属性,如下所示:

<asp:Button ID="addButton" runat="server" Text="Add"  OnClientClick="return confirmationAccept()">

答案 2 :(得分:0)

您可以使用ClientScript.RegisterStartupScript显示javascript警告消息。