关于弹窗问题,在线等 if (success) { msg.Text= "保存成功!";//此处替换成弹窗,但是用了很多方法不能成功,求解 } else { msg.Text= "保存失败!"; } Thread.Sleep(2000); this.Response.Redirect("QdMachine.aspx");把msg处替换成弹窗 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 if (success) { msg.Text= "保存成功 } else { msg.Text= "保存失败!"; } alert(msg); Thread.Sleep(2000); public void Alert(string Msg){ Page pg = (Page)System.Web.HttpContext.Current.Handler; pg.ClientScript.RegisterStartupScript(pg.GetType(), "", "" + Msg + "", true);}Alert("alert('用户名或密码不正确,请重新输入!')"); Response.Write("<script>alert('成功!'),location.href='QdMachine.aspx';</script>");试试吧 用ajax中的ModalPopupExtender控件弹出一个panel 可用ajax的ModalPopupExtender控件弹出一个panel 没仔细看 你那没有弹出窗口的原因是因为后面有个Redirect(),而导致前面的Alert覆盖掉了所以你应该在JS里面实现跳转 比如4楼. 也就是说 你试下4楼的代码 但是你得把你后面的Redirect去掉(location.href实现页面跳转). <asp:Panel ID="pnPassword" runat="server" Style="width: 300px; background-color: #99FF99;" Visible="true" Height="127px" Width="200px"> <center> <table> <tr> <td style="text-align: left;" colspan="2"> <ajax:UpdatePanel ID="upMes" runat="server" UpdateMode="Conditional" RenderMode="Inline"> <ContentTemplate> 系统消息:<asp:Label ID="lblMes" runat="server" /></ContentTemplate> </ajax:UpdatePanel> </td> </tr> <tr> <td class="style1"> 新密码: </td> <td> <asp:UpdatePanel ID="upPassword" runat="server" UpdateMode="Conditional"> <ContentTemplate> <asp:TextBox ID="txtPassword" runat="server" TextMode="Password" MaxLength="16" /> </ContentTemplate> </asp:UpdatePanel> </td> </tr> <tr> <td class="style1"> 再次输入密码: </td> <td> <asp:UpdatePanel ID="upPasswordAgain" runat="server" UpdateMode="Conditional"> <ContentTemplate> <asp:TextBox ID="txtPasswordAgain" runat="server" TextMode="Password" MaxLength="16" /> <br /> <asp:CompareValidator ID="CompareValidator1" runat="server" ControlToCompare="txtPassword" ControlToValidate="txtPasswordAgain" Display="Dynamic" ErrorMessage="两次密码不一致"></asp:CompareValidator> </ContentTemplate> </asp:UpdatePanel> </td> </tr> <tr> <td class="style1"> <asp:UpdatePanel ID="upBtnPasOk" runat="server" UpdateMode="Conditional"> <ContentTemplate> <asp:Button ID="btnPasOk" runat="server" Text="确定" CssClass="submit" OnClick="btnPasOk_Click" /> </ContentTemplate> </asp:UpdatePanel> </td> <td> <asp:Button ID="btnPasCancle" runat="server" Text="取消" CssClass="submit" /> </td> </tr> </table> </center> </asp:Panel> <asp:Button ID="Button2" runat="server" Text="Button" Style="display: none" /> <ajax:ModalPopupExtender ID="mpePassword" TargetControlID="Button2" PopupControlID="pnPassword" CancelControlID="btnPasCancle" BackgroundCssClass="modalBackground" runat="server"> </ajax:ModalPopupExtender> </td>后台弹窗方法mpePassword.Show(); 还有就是直接使用Response.Write() 会在页面的第一行写入JS代码 带来的问题就是 有时候会导致浏览器的兼容问题 最好的是使用pg.ClientScript.RegisterStartupScript() 这种来注册JS事件. .modalBackground { position: absolute; z-index: 100; top: 0px; left: 0px; background-color: #000; filter: alpha(opacity=60); -moz-opacity: 0.6; opacity: 0.6; } .panel { background-color: White; height: 300px; width: 500px; } 试了一下 不行 我在贴点代码 bool success = true; success = UpdateMachineIp(1, txtIp1.Text.Trim()); success = UpdateMachineIp(2, txtIp2.Text.Trim()) && success; success = UpdateMachineIp(3, txtIp3.Text.Trim()) && success; success = UpdateMachineIp(4, txtIp4.Text.Trim()) && success; success = UpdateMachineIp(5, txtIp5.Text.Trim()) && success; success = UpdateMachineIp(6, txtIp6.Text.Trim()) && success; if (success) { //msg.Text = "保存成功!"; Response.Write("<script>alert('成功!'),location.href='QdMachine.aspx';</script>"); } else { msg.Text = "保存失败!"; } Response.Write("<script language='javascript'>alert('保存成功!');window.location.href='QdMachine.aspx';</script>"); 是不是前台xml里面要设置什么 为什么我总是跳不出来 是不是跑到false里面去拉? 如果success是true 那么跳出 保存成功如果success是false 那么跳出 保存失败 我怎么看见你好多马甲啊不就是提示跳转嘛 if (success) { msg.Text= "保存成功!";//此处替换成弹窗,但是用了很多方法不能成功,求解 } else { msg.Text= "保存失败!"; } Thread.Sleep(2000); this.Response.Redirect("QdMachine.aspx");=================》if (success){ ClientScript.RegisterClientScriptBlock(GetType(), "", "<script>alert(保存成功!');setTimeout(function(){location.href=QdMachine.aspx'},2000);</script>");}else{ ClientScript.RegisterClientScriptBlock(GetType(), "", "<script>alert(保存失败!');</script>"); return;} 有兔斯基揉头的表情么,我想揉一通,不能实现哎。在html里面要写什么么?还是什么 崩溃ing 看看结果再说 if (success) { Response.Write("<script language='javascript'>alert('保存成功!');window.location.href='QdMachine.aspx';</script>"); } else { Response.Write("<script language='javascript'>alert('保存失败!');</script>"); } 页面没有啥 问题 关键你的代码 是什么狗屁代码bool success = true;success = UpdateMachineIp(1, txtIp1.Text.Trim());success = UpdateMachineIp(2, txtIp2.Text.Trim()) && success;success = UpdateMachineIp(3, txtIp3.Text.Trim()) && success;success = UpdateMachineIp(4, txtIp4.Text.Trim()) && success;success = UpdateMachineIp(5, txtIp5.Text.Trim()) && success;success = UpdateMachineIp(6, txtIp6.Text.Trim()) && success; 这是一个IP的check,最后success肯定是true,后面不出现弹窗 关于AJAX中调用JS问题,请参考我的博客文章:在UpdatePanel中调用JS,弹出页面将其中的JS代码换成:<script>alert('成功!'),location.href='QdMachine.aspx';</script> 算了 直接写给你吧:string script = "<script language='javascript'>alert("+msg+");</script>"; ScriptManager.RegisterStartupScript(grvWorkList, this.GetType(), "alert", script, false); this.ClientScript.RegisterClientScriptBlock(this.GetType(), "message", "<script>alert('成功!')</script>"); gridview的标题栏如何在指定位置换行 asp.net 读取日期 自动补0 存储过程SQL语句写在数据库里有什么好处呢? webservice 调用问题 请问高手 有些朋友说visual studio 2008很好用,小弟我还有几个不明白的地方要问一下 我在webform中放如一个usercontrol,可是在Codebehind中访问他会报NullRefrence错 ASP.NET的布局 未将对象引用实例化 我这是怎么了? .net 后台动态绑定服务器控件 然后再取值问题 帮忙看下这段代码为何在运行时提示对象不支持此属性或方法
{
msg.Text= "保存成功
}
else
{
msg.Text= "保存失败!";
}
alert(msg);
Thread.Sleep(2000);
public void Alert(string Msg)
{
Page pg = (Page)System.Web.HttpContext.Current.Handler;
pg.ClientScript.RegisterStartupScript(pg.GetType(), "", "" + Msg + "", true);
}Alert("alert('用户名或密码不正确,请重新输入!')");
试试吧
你那没有弹出窗口的原因是因为后面有个Redirect(),而导致前面的Alert覆盖掉了
所以你应该在JS里面实现跳转 比如4楼.
<asp:Panel ID="pnPassword" runat="server" Style="width: 300px; background-color: #99FF99;"
Visible="true" Height="127px" Width="200px">
<center>
<table>
<tr>
<td style="text-align: left;" colspan="2">
<ajax:UpdatePanel ID="upMes" runat="server" UpdateMode="Conditional" RenderMode="Inline">
<ContentTemplate>
系统消息:<asp:Label ID="lblMes" runat="server" /></ContentTemplate>
</ajax:UpdatePanel>
</td>
</tr>
<tr>
<td class="style1">
新密码:
</td>
<td>
<asp:UpdatePanel ID="upPassword" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:TextBox ID="txtPassword" runat="server" TextMode="Password" MaxLength="16" />
</ContentTemplate>
</asp:UpdatePanel>
</td>
</tr>
<tr>
<td class="style1">
再次输入密码:
</td>
<td>
<asp:UpdatePanel ID="upPasswordAgain" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:TextBox ID="txtPasswordAgain" runat="server" TextMode="Password" MaxLength="16" />
<br />
<asp:CompareValidator ID="CompareValidator1" runat="server" ControlToCompare="txtPassword"
ControlToValidate="txtPasswordAgain" Display="Dynamic" ErrorMessage="两次密码不一致"></asp:CompareValidator>
</ContentTemplate>
</asp:UpdatePanel>
</td>
</tr>
<tr>
<td class="style1">
<asp:UpdatePanel ID="upBtnPasOk" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Button ID="btnPasOk" runat="server" Text="确定" CssClass="submit" OnClick="btnPasOk_Click" />
</ContentTemplate>
</asp:UpdatePanel>
</td>
<td>
<asp:Button ID="btnPasCancle" runat="server" Text="取消" CssClass="submit" />
</td>
</tr>
</table>
</center>
</asp:Panel>
<asp:Button ID="Button2" runat="server" Text="Button" Style="display: none" />
<ajax:ModalPopupExtender ID="mpePassword" TargetControlID="Button2" PopupControlID="pnPassword"
CancelControlID="btnPasCancle" BackgroundCssClass="modalBackground" runat="server">
</ajax:ModalPopupExtender>
</td>
后台弹窗方法mpePassword.Show();
.modalBackground
{
position: absolute;
z-index: 100;
top: 0px;
left: 0px;
background-color: #000;
filter: alpha(opacity=60);
-moz-opacity: 0.6;
opacity: 0.6;
}
.panel
{
background-color: White;
height: 300px;
width: 500px;
}
试了一下 不行 我在贴点代码
bool success = true;
success = UpdateMachineIp(1, txtIp1.Text.Trim());
success = UpdateMachineIp(2, txtIp2.Text.Trim()) && success;
success = UpdateMachineIp(3, txtIp3.Text.Trim()) && success;
success = UpdateMachineIp(4, txtIp4.Text.Trim()) && success;
success = UpdateMachineIp(5, txtIp5.Text.Trim()) && success;
success = UpdateMachineIp(6, txtIp6.Text.Trim()) && success; if (success)
{
//msg.Text = "保存成功!";
Response.Write("<script>alert('成功!'),location.href='QdMachine.aspx';</script>");
}
else
{
msg.Text = "保存失败!";
}
Response.Write("<script language='javascript'>alert('保存成功!');window.location.href='QdMachine.aspx';</script>");
是不是前台xml里面要设置什么 为什么我总是跳不出来
如果success是false 那么跳出 保存失败
不就是提示跳转嘛 if (success)
{
msg.Text= "保存成功!";//此处替换成弹窗,但是用了很多方法不能成功,求解
}
else
{
msg.Text= "保存失败!";
}
Thread.Sleep(2000);
this.Response.Redirect("QdMachine.aspx");
=================》if (success)
{
ClientScript.RegisterClientScriptBlock(GetType(), "", "<script>alert(保存成功!');setTimeout(function(){location.href=QdMachine.aspx'},2000);</script>");
}
else
{
ClientScript.RegisterClientScriptBlock(GetType(), "", "<script>alert(保存失败!');</script>");
return;
}
在html里面要写什么么?还是什么 崩溃ing
if (success)
{
Response.Write("<script language='javascript'>alert('保存成功!');window.location.href='QdMachine.aspx';</script>");
}
else
{
Response.Write("<script language='javascript'>alert('保存失败!');</script>");
}
页面没有啥 问题 关键你的代码 是什么狗屁代码
bool success = true;
success = UpdateMachineIp(1, txtIp1.Text.Trim());
success = UpdateMachineIp(2, txtIp2.Text.Trim()) && success;
success = UpdateMachineIp(3, txtIp3.Text.Trim()) && success;
success = UpdateMachineIp(4, txtIp4.Text.Trim()) && success;
success = UpdateMachineIp(5, txtIp5.Text.Trim()) && success;
success = UpdateMachineIp(6, txtIp6.Text.Trim()) && success;
在UpdatePanel中调用JS,弹出页面将其中的JS代码换成:<script>alert('成功!'),location.href='QdMachine.aspx';</script>
ScriptManager.RegisterStartupScript(grvWorkList, this.GetType(), "alert", script, false);