|
|
本帖最后由 spiral 于 2012-12-11 09:54 编辑
Q: 平台的视图选择框每次新添加的数据会将原来文本框的值替换掉,如果我不想替换掉原来的值 只想将新添加的值添加后文本的后面应该怎么做?
A:在表单加一个隐藏字段,在树形视图的确定脚本里,先取得勾选的记录,查出名字。然后再获取表单控件里的值,累加,将值返回值隐藏字段里。然后在隐藏字段刷新,显示字段重计算即可。
参考脚本:
var last="";
var _value=getItemValueAsString("userlist_name");
var _hid_value=getItemValueAsString("hid_userlist_name");
//$PRINTER.println("=====userlist_name:"+_value);
//$PRINTER.println("=====hid_userlist_name:"+_hid_value);
var doc = getCurrentDocument();
doc.findItem("hid_userlist_name").setValue("");
var _flag1=false;
if(_value!=null && _value.trim().length()>0){
last=_value;
_flag1=true;
}
if(_hid_value!=null && _hid_value.trim().length()>0){
if(_flag1){
var _new_content="";
var list = createObject("java.util.ArrayList");
var _attr1=splitString(_value,";");
var _attr2=splitString(_hid_value,";");
if(_attr1!=null && _attr1.length>0){
for(var i=0;i<_attr1.length;i++){
for(var j=0;j<_attr2.length;j++){
if(!_attr1.equals(_attr2[j]) && !"".equals(_attr2[j])){
list.add(_attr2[j]);
}
}
}
}
if(list!=null && list.size()>0){
for(var i=0;i<list.size();i++){
_new_content+=list.get(i)+((i<list.size()-1)?";":"");
}
}
last+=";"+_new_content;
}else{
last=_hid_value;
}
}
//$PRINTER.println("=======last:"+last);
last;
摘自:jariy的提问 原帖子链接:
http://www.teemlink.com/bbs/view ... mp;extra=#pid104578 |
|