首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > PB >

[]一直困惑的PBWEBFORM中的MESSAGEBOX回调有关问题

2013-06-25 
[求助]一直困惑的PBWEBFORM中的MESSAGEBOX回调问题程序是从CS转过来的。一窗口上有两个数据窗口A和B。A、B中

[求助]一直困惑的PBWEBFORM中的MESSAGEBOX回调问题
程序是从CS转过来的。一窗口上有两个数据窗口A和B。A、B中均只有CONSTRUCTOR事件。但在窗口进行A、B数据保存时,会有个MESSAGEBOX进行询问“是否保存”。在MESSAGEBOX弹出前,界面进行了整个页面的刷新。在点击确定后,又一次的整页面刷新。
请问大家是如何进行优化的?因为数据窗口数据量大的时候很影响效率。。。
[解决办法]

引用:
用javascript来写,不要在事件里写messagebox,这样就不产生回调


只能通过上面的方式达到最佳效果;
另外,原来的程序流程需要优化一下,减少messagebox之类的交互,有些提示之类的显示成红色的大字体放到文本控件中,这样也可以减少不必要的交互
[解决办法]
请参考

http://www.jb51.net/article/5057.htm
[解决办法]
现粘贴上一段我的代码,根据返回值来判断执行 
//dw button按钮JS脚本
function dwbuttonclick(sender,rownumber,objectname){


    if (objectname=='b_1'){
        
        if (confirm('是否对数据进行批量处理?')==true){
        
        PBDataWindow_ButtonClicked(sender,rownumber,objectname)
        
            //定义产品实例标识及原接入方式标识变量
            
    //        var indep_prod_id,old_access_id

            //得到数据窗口当前页的数量
            
    //        var rowcount = sender.lastRow+1
            
            
            //循环对数据进行处理
    //        var i 
            
            //定义数组变量,将所以变量写入数组
    //        var arrobject = new Array();
            
            //开始循环               
    //        for (i=1;i<=rowcount;i++){
                
                           
                //滚动到处理行
      //          sender.SetScroll(1,i)
             
                //得到产品实例标识及原接入方式标识


                
      //          indep_prod_id = sender.GetItem(i,'om_service_order_indep_prod_inst_id')
                
      //          old_access_id = sender.GetItem(i,'om_so_access_old_access_id')
                
                //将获取的值写入到数组
                
       //         arrobject[i]=indep_prod_id+';'+old_access_id
        
                //得到行信息                
       //         sender.rowInfos[i - 1] = new HTDW_RowInfoClass(sender.rows[i],i)
                
                //高亮显示
       //         sender.SelectRow(0,false);
        
       //         sender.SelectRow(i,true);        
                
                
                //调用数据窗口CLICKED事件并调用接口方法
        //        rownumber = i;
               
                
        //    }
            
            
                      
            
            
            
        }
        else{
        
        
        }
        
    
    }
   

热点排行