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问题内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
asp.net core razor自定义taghelper的方法
这篇文章主要介绍了asp.net core razor自定义taghelper的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2019-09-09
asp.net 使用驻留在页面中的Cache缓存常用可定时更新的数据
这个就先需要先知道一下System.Web.Caching.Cache类,其实在我做WEB应用的时候,我会将一些使用频繁但是又要经常使用并且需要急时更新的对象放到Cache中,这样可以很大程序上减少从硬盘上读取数据的次数。2010-03-03
ASP.NET MVC中使用Bundle打包压缩js和css的方法
这篇文章主要为大家详细介绍了ASP.NET MVC中使用Bundle打包压缩js和css的方法,感兴趣的小伙伴们可以参考一下2016-05-05


最新评论