页面上有一个button,点击button后往数据库中添加一条记录,如果添加成功,让div1显示,失败则让div2显示。。请给我点思路吧自己做了一个,需要点击button两次div才显示,而且加了两条记录,可能是页面生命周期没搞清楚。。
解决方案 »
- 能同时上传多个图片的方法问题
- 求一SQL查询(在线等....)
- 动态生成表格中包含的动态生成的文本框,如何获得动态生成的文本框的值?
- .net类库问题,请大家帮帮小弟
- 怎么限制上传图片的格式和大小?
- ArrayList 集合中数据量很大 代码优化
- ASP.net如何实现:页面里面嵌套页面,希望能得到多种答案。
- 再什么情况下会出现“网页已经过期”的警告?-----------------------------------
- ASP和ASP.NET的Session变量能共享吗?
- 没有分了。求高手帮帮忙啊!!DataGrid的显示问题
- 输入五笔汉字时整个屏幕都闪一下
- JS能控制GridView的一些属性吗
如果成功
div1显示
div2隐藏
失败
div2显示
div1隐藏
<form id="form1" runat="server">
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
<div id="divSuccess" runat="server" style="visibility:hidden;" enableviewstate="false">
Success!
</div>
<div id="divFailed" runat="server" style="visibility:hidden;" enableviewstate="false">
Failed!
</div>
</form>protected void Button1_Click(object sender, EventArgs e)
{
bool success = true;
//数据库操作 if (success)
divSuccess.Style["visibility"] = "visible";
else
divFailed.Style["visibility"]= "visible";
}
你在这次点击事件时注册的JS只有在下次点击才被执行,这就是问题的原因
divFailed.Style["visibility"]= !success;
<form id="form1" runat="server">
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
<div id="divSuccess" runat="server" style="display:none;" enableviewstate="false">
Success!
</div>
<div id="divFailed" runat="server" style="display:none;" enableviewstate="false">
Failed!
</div>
</form>
至于为什么enableviewstate="false", 可以用下面代码测一下就知道原因了。
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
ViewState["State"] = false;
}
protected void Button1_Click(object sender, EventArgs e)
{ bool success = (bool)ViewState["State"];
success = success == true ? false : true;
//数据库操作 if (success)
divSuccess.Style["display"] = "block";
else
divFailed.Style["display"]= "block"; ViewState["State"] = success;
}
但是给div加上runat="server"后会出现脚本错误,不知道为什么。
{
执行添加代码
显示div1
隐藏div2
}
else
{
隐藏div1
显示div2
}
<div id="divSuccess" runat="server">Success!</div>
<div id="divFailed" runat="server">Fail!</div>.cs
if(成功)
{
执行添加代码 divSuccess.Visible = true;
divFailed.Visible = false;
}
else
{
divSuccess.Visible = false;
divFailed.Visible = true;
}