找回密码
 注册成为天翎用户
查看: 959|回复: 2

[已解决] 如何多选复选框,返回要找的数据

[复制链接]
sorcery 发表于 2022-1-12 12:42:36 | 显示全部楼层 |阅读模式
【myApps/OBPM版本号】:v5.0- sp XX
【浏览器类型】:Chrome/其他
【联系方式-QQ】:190407227
【联系电话】:    请留下您的联系电话,以便技术同事更好解决您的问题
【问题描述】:
我有很多参数,是以复选框的形式选择的
这些参数对应了不同的规范,我如何通过勾选复选框(多选),使用sql查询一张表,把对应的规范都放到一个文本框或者下拉框中呢?

(function(){
        var opts = $TOOLS.createOptions();      
                var parentdoc=getParentDocument();//getParentDocument返回当前打开文档的父文档对象
        var hy =parentdoc.getItemValueAsString("行业");
        var cs = getItemValueAsString("参数复选框");
        var docids = splitText(ywdb, ";") ;      
        if(cs != null && cs.length()>0){                    
        var sql="select * from tlk_参数名称 where item_参数名称 like '%"+cs+"%' and item_行业='"+hy+"'";
       println("SQL脚本输出======》"+sql);
        var query = queryBySQL(sql);                                 
        if(query!=null){        
                for(var i=0;i<query.size();i++){                              
                        var doc=query.get(i);                              
                        var name = doc.getItemValueAsString("试验方法");            
                                if(i==0&&(query.size()==1)){         
                                        opts.add(name,name,true);                  
                                }else{               
                                        opts.add(name,name,false);                           
                                }                             
                                
                        }         
                }   
        }                                
        return opts;
})();

这样是错误的,where item_参数名称 like '%"+cs+"%' ,我感觉这个地方是不对的,我换成in 和  find_in_set怎么都不对呢
请大佬相助






1、问题描述最好图文并茂,如有视频/脚本可直接放出,这样技术同事在处理该问题时效率更加高效哦~
2、如果该问题已得到解决,请在该帖子下回复\"已解决可结帖\"
 楼主| sorcery 发表于 2022-1-12 13:27:33 | 显示全部楼层
已解决,代码如下
var sql="select * from TLK_参数名称 where 1=1 ";
var name = getItemValueAsString("参数复选框");
var opts = createOptions();
var parentdoc=getParentDocument();//getParentDocument返回当前打开文档的父文档对象
var hy =parentdoc.getItemValueAsString("行业");
opts.add("","");
println("用户名==============="+name);
if(name != null){
      var usersplit = name.split(';');
          if(usersplit.length > 0){
              name = name.replace(";","','");  
          }
          name = "('"+ name +"')";
          println("name================="+name);
          sql += "  and item_参数名称 in "+name+"  and item_行业 = '"+hy+"'";
          }
        var query = queryBySQL(sql);                                 
        if(query!=null){        
                for(var i=0;i<query.size();i++){                              
                        var doc=query.get(i);                              
                        var name1 = doc.getItemValueAsString("试验方法");            
                    opts.add(name1,name1);                           
                        }         
                }

opts;
回复

使用道具 举报

白日蜜语 发表于 2022-1-13 05:59:02 | 显示全部楼层
好的,有问题请继续发贴,谢谢!
回复

使用道具 举报

本版积分规则

手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-14 11:43

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表