

























以前开发asp.net网页时,让asp:Button点击前,confirm信息,提示操作者。
<form id="form1" runat="server"> <div> <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" /> </div> </form>
上面代码运行是正常的。
但是,当你尝试把Button按钮click点击事件由OnClick改成OnClientClick,
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="btnClick();" />
js code,
<script type="text/javascript">
function btnClick() {
//处理...
alert("处理");
}
</script>
在运行起来,它是先alert,再confirm。
有问题,也许是语法不正确。
修改代码,把C# Page_Load事件相关代码注释掉,
protected void Page_Load(object sender, EventArgs e) { // this.Button1.Attributes["onclick"] = "if(!confirm('确认进行数量平衡。')){ return false; };"; // this.Button1.Attributes.Add("onclick", "if( !confirm('确认进行数量平衡。') ){ return false; }"); }
前端,
<script type="text/javascript">
//function btnClick() {
// //处理...
// alert("处理");
//}
function btnClick() {
if (!confirm('确认进行数量平衡。')) {
return false; // 用户取消,阻止回发
}
alert("处理");
return true;
}
</script>
html处,仍需要修改,在OnClientClick事件中,添加return...
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="return btnClick();" />
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。