在asp.net中使用confirm可以分为两种:
1.没有使用ajax,confirm会引起也面刷新
2.使用了ajax,不会刷新
A.没有使用ajax,可以用StringBuilder来完成.
(一)asp.net用StringBuilder控制后台操作javascript:confirm返回值,此方法比较烦琐
1.后台启动事件
StringBuilder sb = new StringBuilder();sb.Append("<script language='javascript'>");sb.Append("var val=window.confirm('Are you sure!');");sb.Append("window.document.getElementById('TextBox1').value=val;");sb.Append("__doPostBack('TextBox1','');");sb.Append("</script>");this.RegisterStartupScript(System.Guid.NewGuid().ToString(), sb.ToString());
2.前台代码:
复制代码 代码如下:
<asp:TextBox runat="server" AutoPostBack="true" OnTextChanged="TextBox1_TextChanged"></asp:TextBox>
protected void TextBox1_TextChanged(object sender, EventArgs e){if (((TextBox)(sender)).Text != ""){if (((TextBox)(sender)).Text.ToUpper() == "TRUE"){//确定后执行另一个事件/方法 }if (((TextBox)(sender)).Text.ToUpper() == "FALSE"){//取消后执行另一个事件/方法}} }
该事件也可以写成其它的方法驱动。只是判断TexBox1的值。
注意:该事件由AutoPostBack="true"引起页面刷新,全局变量丢失,最好使用session变量来保存需要存储的值。
(二)通过前台Javascript来确定后台执行的方法,也就多了个OnClientClick事件此方法最简单
前台按钮事件
复制代码 代码如下:
<asp:Button runat="server" OnClientClick="if(confirm('调用后台bt_DeleteButton_Click事件,确定继续吗?')){return true;}else{return false;}" Text="删除" Visible="False" />
a.OnClick后台事件,
b.OnClientClick事件,javascript的confirm,选择 确定后执行 OnClick后台是事件bt_DeleteButton_Click
B:使用了Ajax控件的页面
复制代码 代码如下:
ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "", "alert('提示');if(confirm('是否继续执行yes)){alert('本页面继续添加')}else{window.open('productManage.aspx','_blank');}", true);
Tags:confirm 返回值
上一篇:asp.net中IDataParameter调用存储过程的实现方法
下一篇:下面没有链接了
相关文章
文章评论
最 近 更 新
热 点 排 行
关于我们 - 广告合作 - 联系我们 - 免责声明 - 网站地图 - 投诉建议 - 在线投稿
CopyRight © 2006-2014 脚本之家 JB51.Net , All Rights Reserved
新闻热点
疑难解答
图片精选