Aras学习笔记 (30) Aras官方帖Disable Form Field介绍及代码汇总

官方帖地址https://community.aras.com/b/english/posts/disable-form-fields/

1、文本字段:

var input = getFieldByName("item_number");
input.getElementsByTagName("input")[0].disabled = true;

2、Dropdown字段:11.0 SP11之前版本,Dropdown是一个select控件,但在11.0 SP11+以后拆分成了input和button两个控件,所以disable时要同时操作。

var input = getFieldByName("make_buy");
input.getElementsByTagName("input")[0].disabled = true;
input.getElementsByTagName("button")[0].disabled = true;

3、Item字段: item字段基本上和dropdown类似,也是包含input和button两个控件。

var input = getFieldByName("owned_by_id");
setTimeout(function() {
    input.getElementsByTagName("input")[0].disabled = true;
    input.getElementsByTagName("button")[0].disabled = true;
}, 100);

官网上说在Item字段被Disable后会出现再次被Enable的情况,但在我们Aras系统并未出现,可能我用的11.0 SP15已经修复了这个bug,所以只需如下代码即可。

var input = getFieldByName("owned_by_id");
input.getElementsByTagName("input")[0].disabled = true;
input.getElementsByTagName("button")[0].disabled = true;

4、Date字段:Date字段和Dropdown及Item类似,也是包含input和button两个控件,但不同点是当日期字段被disable后需要更换图标。

var input = getFieldByName("effective_date");
input.getElementsByTagName("input")[0].disabled = true;
input.getElementsByTagName("input")[1].disabled = true;
input.getElementsByTagName("input")[1].src = "../images/calendar-disabled.svg";

当然重新Enable时也要更换图标。

input.getElementsByTagName("input")[1].src = "../images/calendar.svg";

实现效果如下:

 

posted @ 2018-12-24 13:19  无敌师爷IT技术Blog  阅读(259)  评论(0编辑  收藏  举报