ASP.NET中Onclick与OnClientClick遇到的问题
本文主要介绍了ASP.NET中Onclick与OnClientClick遇到的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
OnClientClick是在前端执行的代码,也就是在xx.js中
Onclick是在后端执行的代码,也就是在xx.cs中
<asp:Button ID="btnGenerateQuote" runat="server" CssClass="button2" Text="<%$resx:xxx%>" OnClientClick = "return GenerateQuote();" OnClick="btnGenerateQuote_Click" />
这里想要实现的功能是:根据OnClientClick的返回值,判断是否执行OnClick中的代码,一开始的想法是
function GenerateQuote() {
alertlConfirm(_c.toMessage('提示:是否XXX?'), function () {
return true;
}, function () {
return false;
});
return false;
}
发现根本就没有判断js里的值,直接返回false
(最后一行这个return false不写的话,默认是返回true,那么就是不判断,直接执行onclick中的代码)
原因:js是单线程,直接执行完语句不会回调
解决方法:添加一个回调函数
function GenerateQuote() {
alertlConfirm(_c.toMessage('提示:是否XXX?'), function () {
//第一个参数是按钮名,第二个参数是Onclick方法
__doPostBack("btnGenerateQuote", 'btnGenerateQuote_Click');
return true;
}, function () {
return false;
});
return false;
}
到此这篇关于ASP.NET中Onclick与OnClientClick遇到的问题的文章就介绍到这了,更多相关ASP.NET Onclick与OnClientClick问题内容请继续浏览下面的相关文章!
您可能感兴趣的文章
声明:本文来自互联网或用户投稿,该文观点仅代表作者本人,不代表本站立场。文章及其配图仅供学习和交流之用,版权归原作者所有,如有内容侵权或者其他违规问题,请联系本站处理。








