用c#显示消息

本文关键字:消息 显示 | 更新日期: 2023-09-27 18:11:31

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

代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Windows.Forms;
public partial class Registration : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
}
protected void submit_Click(object sender, EventArgs e)
{
    Response.Write("Your registration is succesful"); // Not displaying
    //MessageBox.Show("Test Display");
}

}

ASP。净

<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>

用c#显示消息

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

服务器端是发生在服务器上的一切(例如ASP, ASP. js)。. NET、PHP),用于创建发送给浏览器的HTML。它还处理用户提交内容时浏览器返回的信息(post-back)。

客户端是一旦HTML被接收,或者当用户在页面上做一些事情,比如点击一个元素时,在浏览器上发生的一切。

您正在做的是试图在服务器上运行Windows应用程序样式MessageBox.Show …这是行不通的。

如果你想让浏览器显示一个"警告"窗口(有点像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使用<asp:Literal>控件(这给你的优势,定位控件的位置,你需要它),并设置它的.Text属性(记住,这将保持post-back,所以你可能需要清除它)。

你也可以使用<asp:Label>,这不仅可以让你定位它,但你也可以包括.CssClass.Style属性更好的格式化。

如果你想显示确认消息框尝试使用jquery在你的。aspx页面。您可以添加如下函数

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

然后像这样添加onclientclick属性:

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

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