ASP 按钮在单击后隐藏
本文关键字:隐藏 单击 按钮 ASP | 更新日期: 2023-09-27 18:37:18
我使用代码隐藏创建了一个简单的asp按钮。我成功地在页面上添加了此按钮,它在网页上显示我,但是当我单击该按钮然后在回发后按钮隐藏在网页上时遇到了问题。请帮助我解决这个问题。这是我的代码:
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
CreateButton();
}
}
protected void CreateButton()
{
Button btn = new Button();
btn.ID = "newDynamicBtn";
btn.Text = "Click Me";
//btn.Attributes.Add("runat", "server");
//btn.Attributes.Add("onClick", "newDynamicBtn_Click");
//btn.OnClientClick = "return confirm('are you sure ?')";
btn.Click += newDynamicBtn_Click;
form1.Controls.Add(btn);
}
protected void newDynamicBtn_Click(object sender, EventArgs e)
{
Response.Write(@"<script>alert('Hello')</script>");
}
每次按钮调用时它也运行Page_Load事件,如果你想每次都显示按钮,那么你必须使函数
CreateButton() 没有任何条件 (!postBack)
例
protected void Page_Load(object sender, EventArgs e)
{
CreateButton();
}
protected void CreateButton()
{
Button btn = new Button();
btn.ID = "newDynamicBtn";
btn.Text = "Click Me";
//btn.Attributes.Add("runat", "server");
//btn.Attributes.Add("onClick", "newDynamicBtn_Click");
//btn.OnClientClick = "return confirm('are you sure ?')";
btn.Click += newDynamicBtn_Click;
form1.Controls.Add(btn);
}
protected void newDynamicBtn_Click(object sender, EventArgs e)
{
Response.Write(@"<script>alert('Hello')</script>");
}
正如毗湿奴·普拉萨德(Vishnu Prasad)在评论中所说,由于条件if(!isPostBack)
,您的代码仅在页面首次加载时创建按钮。如果您希望按钮在回发后出现在页面中,则只需删除该条件
if(!IsPostBack)
上述代码的目的是检查页面是否是第一次请求的。如果第一次请求页面,则 if 条件中的代码将执行,否则不执行。这就是为什么您没有第二次看到该按钮的原因。
在 if 条件之外调用 createButton()。