wabacus联想输入和自动填充的结合以及回调函数给report赋值

<col column="dh_name" label="名称" clickorderby="true">
02. <inputbox jsvalidate="isNotEmpty({0}列不允许为空)">
03. <autocomplete columns="dh_gg;dh_dw"colvaluecondition="fl_name like '%#dh_name#%'" dataset="SELECT fl_name as dh_name,fl_gg as dh_gg,fl_dw as dh_dw FROM gyb_fl where  {#condition#} order by fl_id "></autocomplete>
04. <typeprompt width="200" count="15">
05. <promptcol label="fl_name"matchmode="anywhere"/>
06. <datasource><option source="@{select fl_name from gyb_fl where {#matchcondition#}}"/></datasource>
07. </typeprompt>
08. </inputbox>
<typeprompt width="200" count="15"> 
05. 
<promptcol label="fl_name" matchmode="anywhere"/> 
06. 
<datasource><option source="@{select fl_name from gyb_fl where {#matchcondition#}}"/></datasource> 
07. 
</typeprompt> 

这个不用解释了,就是一个联想输入框

autocomplete columns="dh_gg;dh_dw" colvaluecondition="fl_name like '%#dh_name#%'" dataset="SELECT fl_name as dh_name,fl_gg as dh_gg,fl_dw as dh_dw FROM gyb_fl where  {#condition#} order by fl_id "></autocomplete> 
填充这块,因为  gyb_fl 表里的字段和当前report的字段名字不一致,所以要as下,dh_gg;dh_dw这个是report中的字段label,要注意这块colvaluecondition="fl_name like '%#dh_name#%'"   fl_name是gyb_fl表中的字段,dh_name是report中的label字段 
这样配置就可以联想加自动填充



关于回调函数,我先贴下代码
01. <col column="dh_name" label="名称" clickorderby="true">
02. <inputbox>
03. <typeprompt count="20" width="500"callbackmethod="testTypePromptCallBack1">
04. <promptcol label="fl_name" title="名称"matchmode="anywhere"></promptcol>
05. <promptcol label="fl_gg" title="规格型号"hidden="true"></promptcol>
06. <promptcol label="fl_dw" title="单位"hidden="true"></promptcol>
07.  
08. <datasource>
09. <option source="@{select * from gyb_fl where {#matchcondition#}}"></option>
10. </datasource>
11. </typeprompt>
12. </inputbox>
13. </col>






<promptcol label="fl_name" title="名称" matchmode="anywhere"></promptcol> 这里要注意下,demo上是 matchmode="state"好像是这个,再这里不多解释,如果是这样的话,查找字段会 like  ‘关键字%’,所以我这里改为“anywhere” 
callbackmethod="testTypePromptCallBack1"回调函数在deom.js里面,这个是我加了一个
01. function testTypePromptCallBack1(textObj,colvaluesArr)
02. {
03. if(textObj==nullreturn;
04. var selectValus='';
05. var dw='';
06. var gg='';
07.  
08. for(var i=0;i<colvaluesArr.length;i++)
09.  
10. {
11. //alert(colvaluesArr.length);
12. if (colvaluesArr.length==3)
13. {
14. if (i==1)  
15. gg=colvaluesArr[i].label;
16. if (i==2)
17. dw=colvaluesArr[i].label;
18. }
19. if (colvaluesArr.length==2)
20. {
21. if (i==1)  
22. dw=colvaluesArr[i].label;
23. }
24. //wx_alert('[label:'+colvaluesArr[i].label+';value:'+colvaluesArr[i].value+']');
25. //wx_alert(colvaluesArr[i].value);
26. //selectValus+='[label:'+colvaluesArr[i].label+';value:'+colvaluesArr[i].value+']';
27. }
28. setReportInputBoxValue('gyb_dh7','report1',false,{dh_gg:gg,dh_dw:dw},{name:'SELECTEDROW',value:true});
需要注意一点,就是你获取的字段中如果有null, 长度就会减1,这时需要自己去判断了l,
09.
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值