首页 > 代码库 > 收藏:关于UseSubmitBehavior和OnClientClick同时使用,导致无法触发后台事件的问题
收藏:关于UseSubmitBehavior和OnClientClick同时使用,导致无法触发后台事件的问题
经常会有正样的需求,在用户做一个不易恢复并且容易误操作的动作时需要给用户以提示,用户确认后继续执行动作。
简单的解决方案是:前台用OnClientClick事件中使用Confirm给用弹出确认提示框,用户确认后继续执行后台代码,取消的不做处理。 但是最近突然遇到这种方法不灵了,反复确认后发现了button的UseSubmitBehavior属性被设置成了false。类似问题,网上找到了这个帖子。
以这个帖子为蓝本说明下具体的解决方案,这里只说明帖子中指出的第一种方案:
<td style="width: 12%; padding: 5px;" align="center">
<asp:Button ID="Button2" runat="server" UseSubmitBehavior="false" Text="订单开票" OnClientClick=‘return Checked();‘
OnClick="Button2_Click" Width="90px" ClientIDMode="Static" />
</td>
原有问题代码如下:<asp:Button ID="IbtnSave" runat="server" Text="保存" CssClass="buttonCss" OnClientClick=" return true;" OnClick="IbtnSave_Click1" UseSubmitBehavior="false"/>
解决方法如下:
<script type="text/javascript" >
function CheckDelete() {
if (confirm(‘你确定要删除XX吗?‘)) {
return true;
}
else {
return false;
}
}
</script>
按钮代码修改如下:
<asp:Button ID="IbtnSave" runat="server" Text="保存" CssClass="buttonCss" OnClientClick=" if(!CheckDelete()){return false;}" OnClick="IbtnSave_Click1" UseSubmitBehavior="false"/>
收藏:关于UseSubmitBehavior和OnClientClick同时使用,导致无法触发后台事件的问题