日期:2014-05-16  浏览次数:20346 次

关于弹出层返回值的问题
<script type="text/javascript">
$("#button1").click(function(){ //按钮单击事件
$.weeboxs.open('弹窗事件测试?', {
title:'标题',
onok:function(box){
alert('点击确定按钮后!');
box.close();//增加事件方法后需手动关闭弹窗
},
oncancel:function(box){
alert('点击取消按钮后!');
box.close();//增加事件方法后需手动关闭弹窗
}
});
});
</script>

上面代码是jqeury开发的一个弹出层插件(weebox)代码,这只是举例。

比如:我有一个服务器按钮控件(asp.net),按钮有前台OnClientClick(也即是js的onclick事件)和后台事件OnClick,当两个事件同时存在时,只有OnClientClick返回值为true时,才执行后台事件OnClick。

根据上面弹出层的代码,我怎么想也想不出如何返回true或false给OnClientClick,真的郁闷,所以求救各位了。。。



------解决方案--------------------
JScript code

var b=false;
$("#Button1").click(function(){
    $.weeboxs.open('弹窗事件测试?', {
        title:'提示',
        onok:function(box){
            b=true;
            //并没有传参box,因此这里的box其实是event
            $.weeboxs.close();//所以只能用这个方法关闭
            $("#button1").click(function(){return true;});
            $("#Button1").click();
        },
        oncancel:function(box){
            b=false;
            //并没有传参box,因此这里的box其实是event
            $.weeboxs.close();//所以只能用这个方法关闭
            //现在,你再按下,看有效果没
            //$("#Button1").click(); 
            
        }
    });
    return b;
});