jabdp之编写javascript(二)

≡放荡痞女 提交于 2020-03-16 17:18:17

某厂面试归来,发现自己落伍了!>>>

5、字段的事件编辑

 

在申购单的第二行里是填写供应商的信息,要是每次都一个一个的填会很慢,我们可以先在【基础信息】的【供应商信息】模块里先填写好。然后通过js代码,实现一选供应商名称,其他的联系人、手机号码、地址全部都跳出来。

步骤一:准备好供应商信息

 

现在基础信息菜单下建好【供应商信息】模块,然后【供应商信息】模块里先填写好。

步骤二:编写js代码

打开设计器,点击【供应商名称】字段,然后字段属性里点击打开【事件编辑】。

 

1.1平台函数jwpf.getFilterData()

这里主要用平台内置jwpf.getFilterData()函数获取供应商信息数据,然后用jwdf.setFormVal()将获取到的数据设置到页面上。

jwpf.getFilterData()有两个参数,sqlkey(sql语句的key)filterParam(查询条件)。

参数sqlKey

SqlKey怎么来呢?我们可以把sql语句存放在某字段的sql编辑里(存放在哪个字段都行,看自己喜好)。

点开【sql编辑】,点击新增。

 

这里的shengoudan.ShenGouDanZhuBiao.gongyingshangmingchen.sql1便是jwpf.getFilterData()函数的参数sqlKey

参数filterParam

jwpf.getFilterData()的另外一个参数sqlKey = { "filter_EQS_name" : "设置查询条件值"; }变量名以filter_EQS_开头,后面的name表示查询条件key就是sql语句里“;”后面的,例如这里就是id; 其中EQS中的S表示数据类型事件编辑窗口右下角有详细的说明。返回值json对象:

返回值是json对象,返回值格式如:

{list:[{id:具体值},{lianxiren:具体值},{shoujihao:具体值},{dizhi:具体值}],map:{key:caption}}

用【返回值】.list,我这里是gysData.list,就能获取到列表数据:[{id:具体值},{lianxiren:具体值},{shoujihao:具体值},{dizhi:具体值}],是一个json数组,数组里的jsonKey值就是sql生成规则里的字段Key

1.2平台函数jwpf.setFormVal()

    Jwpf.setFormVal()是用来设置页面值的,上一节已经详细讲过了,而且事件编辑窗口右下角有具体说明。

6、列表选择对话框

如下图所示,点击【选择产品】,弹出产品列表对话框,勾选上你要选择的产品,然后按确认,对话框里的勾上的产品数据就会下推到申购产品明细里。这个怎么实现呢。

  

点击申购产品明细的表单属性,填写好后点击【设置】,编写js代码,如下:

var formParam = {

"title":"产品选择",

"formKey":"chanpinxuanzezhubiao",

"width":1000,

"height":450,

"onAfterSure":function(win) {

var rows = win._getSelectFilterData_();

/*返回值rows就是选中记录,格式是json数据,例如

[{"chanpinbianhao":"s001","chanpinmingchen":"王老吉""chanpinleixing":"01","guige":"瓶装"}

 {"chanpinbianhao":"s002","chanpinmingchen":"王老吉""chanpinleixing":"02","guige":"袋装"}]

*/

if(rows){

       var tableKey="ShenGouChanPinMingXi";

       var rowsData = [];

/*rows进行处理变成合适的参数rowsData,因为产品选择的叫"guige",申购产品明细叫"chanpinguige"*/

       for(var i = 0;i<rows.length;i++){

          rowsData.push($.extend({},rows[i],{"chanpinguige":rows[i]["guige"]}));

        }

/*rowsData里就比rows多了"chanpinguige":"瓶装"*/

       jwpf.setTableData(tableKey, rowsData,true);

       return true;

    } else {

       alert("请选择产品");

    }

}

};

openFormWin(formParam);//打开弹窗。

主要是在onClick事件里用用openFormWin(formParam)函数来打开弹窗,参数formParam的详细说明看右下角。

注意的是参数formParam里的FormKey填的是已经做好的自定义表单的属性名小写,这个自定义表单用的是第五章做的自定表单。

formParam里的onAfterSure就是按了确认按钮后执行的函数。

7、样式改变

a字段的样式

如下图,数量少于五变成红色,以便于提醒。

    点击字段【数量】的字段属性【事件编辑】,onStyler事件,可以在这个事件里return一个样式,这个样式就是这个字段整列的样式。

b整行的样式

    如下图所示,把数量大于500的整行的背景颜色变成黄色。

点开申购产品明细的表单属性的【事件编辑】。onRowStyler这里的便是列表行样式的事件。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!