Class Index | File Index

Classes


Namespace Sucang.detail


Defined in: detail.js.

Namespace Summary
Constructor Attributes Constructor Name and Description
 
明细表操作的相关方法
Method Summary
Method Attributes Method Name and Description
<static>  
Sucang.detail.Add(String, Integer|Object|null, Function|Object)
1,默认在最后插入一行
2,当CheckBox选中后,在最后选中项的前面插入一行.
<static>  
Sucang.detail.checkUnique(String, String|Array)
检查指定明细行数据的唯一性,需要自定义检查脚本中调用是否需要检测
<static>  
Sucang.detail.clearRowId(String)
清除子表单明细行的唯一标识符ID,用于提交时会重新保存数据,相当于复制了当前所有明细行数据
<static>  
Sucang.detail.Copy(String, Number, Function|Object)
将指定行号或选中行的数据复制到后一行
<static>  
Sucang.detail.Del(String)
根据子表id删除当前选中的行
<static>  
Sucang.detail.filldata(String, String, String|Object, Function|Object)
用于在布局中Ajax异步加载明细多行数据,根据sql或者url,返回值为JSONArray类型,并key和明细字段名对应
<static>  
Sucang.detail.getColumnValue(String|Object, boolean)
返回$fieldName列的数据以数组类型
<static>  
Sucang.detail.getName(String|Object)
分解明细表字段的名称
<static>  
Sucang.detail.getRecordValue(string|Object, Boolean)
返回$rowIndex行的数据以键值对类型的对象
<static>  
Sucang.detail.getRowIds(String)
返回明细行的ID值的排列顺序,以便下次编辑是保持顺序。如果为数字表示新增行
<static>  
Sucang.detail.getRowIndexByOrder(String, Number)
根据行顺序号获取行的索引号,正常情况下是相等的,当行有中间增加或删除时,行顺序和行索引号就不对应.
<static>  
Sucang.detail.getRowIndexs(String, boolean)
返回明细行的行号
<static>  
Sucang.detail.reorder(String[必须], Function[可选])
用于在编辑模式的明细前<s:rowid prefix="F1" value="_${ch.id}" withorder="true" /"> 如果自定义序号格式,请实现reorderCallback(i)回调函数
<static>  
Sucang.detail.selectAll(String, boolean|Object)
选中所有明细行,如Sucang.detail.selectAll('F34',this);
<static>  
Sucang.detail.setRowReadonly(String, Number, boolean, Object)
设置行数据为只读,执行该操作后无法还原为编辑状态。
Namespace Detail
Sucang.detail
明细表操作的相关方法
Method Detail
<static> {objTr} Sucang.detail.Add(String, Integer|Object|null, Function|Object)
1,默认在最后插入一行
2,当CheckBox选中后,在最后选中项的前面插入一行.
3,如果指定Index则插入到index行的位置,**一次只能插入一行**
Parameters:
{formPrefix} String
子表单的前缀编号,见FormInfo.indexFlag
{index} Integer|Object|null
//如果是数字型,则指行的顺序即可从0开始计数
{callback} Function|Object
添加明细行完成后的回调函数或者填充初始化值{name:$v1,name2:$v2,callback:function(rowIndex,id){ ... }} 或者 function(rowIndex,id){ ... }
Returns:
{objTr} HTMLTrElement 返回新增加行的TR对象

<static> Sucang.detail.checkUnique(String, String|Array)
检查指定明细行数据的唯一性,需要自定义检查脚本中调用是否需要检测
Parameters:
{prefix} String
//明细表前缀
{fieldNames} String|Array
//字段名或多个字段联合唯一性
Returns:
boolean|Number 如果都是唯一的则返回true,否则为行序号(不是行的索引号,有可能因为删除或中间插入而导致的显示行和索引号不一致)

<static> Sucang.detail.clearRowId(String)
清除子表单明细行的唯一标识符ID,用于提交时会重新保存数据,相当于复制了当前所有明细行数据
Parameters:
{formPrefix} String
子表单的前缀编号,见FormInfo.indexFlag

<static> Sucang.detail.Copy(String, Number, Function|Object)
将指定行号或选中行的数据复制到后一行
Parameters:
{prefix} String
//明细表前缀
{rowOrder} Number
//行序号,从0开始计数,如果为null则默认复制选中行
{data} Function|Object
//参数格式同Add()方法的第三个参数
Returns:
如果执行成功返回索引行号,否则返回-1

<static> {rowindexs} Sucang.detail.Del(String)
根据子表id删除当前选中的行
Parameters:
{formPrefix} String
子表单的前缀编号,见FormInfo.indexFlag
Returns:
{rowindexs} Array 返回值为删除了的行索引号

<static> Sucang.detail.filldata(String, String, String|Object, Function|Object)
用于在布局中Ajax异步加载明细多行数据,根据sql或者url,返回值为JSONArray类型,并key和明细字段名对应
Parameters:
{preifx} String
明细表的前缀ID
{sqlid} String
布局中的自定义sqlid标识符或者直接指定在/为前缀的URL地址
{params} String|Object
指定参数对象,如果只传一个参数,则Sql页面用value变量表示
{data} Function|Object
回调函数格式{callback:function(rowindex,rowData){ .. },_clearAll:true}默认参数_clearAll=true表示填充明细前先清空明细表可以指定为false则不清空
如果是Object则每一行的上覆盖自定义数据可以指定callback属性来指定回调函数(每一行都会调用callback函数)
Returns:
void

<static> {vals} Sucang.detail.getColumnValue(String|Object, boolean)
返回$fieldName列的数据以数组类型
Sucang.page.getColumnValue('F45_2_name1');将返回name1字段列的所有数据
Parameters:
{fieldName} String|Object
明细表中的字段名或Input输入框的对象
{isNumber} boolean
表示是否将数据转换为数字型数组返回,可省略。默认为字符串
Returns:
{vals} Array<String>

<static> {obj} Sucang.detail.getName(String|Object)
分解明细表字段的名称
Sucang.detail.getName('F45_2_name1');返回值为{prefix:'F45',rowindex:2,name:'name1'}
Parameters:
{fieldName} String|Object
明细表中的字段名或明细表中的Browser按钮对象,名称一般为:F45_2_name1
Returns:
{obj} Object {prefix:$前缀,rowindex:$该字段所在行号,name:$字段名}

<static> {vals} Sucang.detail.getRecordValue(string|Object, Boolean)
返回$rowIndex行的数据以键值对类型的对象
Sucang.page.getRecordValue('F45_2_name1');将返回第2行的所有字段的数据
Parameters:
{fieldName} string|Object
明细表中的字段名或Input输入框的对象
{withText} Boolean
表示是否返回带文本的用于行数据复制用
Returns:
{vals} Object

<static> {ids} Sucang.detail.getRowIds(String)
返回明细行的ID值的排列顺序,以便下次编辑是保持顺序。如果为数字表示新增行
Parameters:
{formPrefix} String
F+表单的前缀编号,见FormInfo.indexFlag,如:F103,F18
Returns:
{ids} Array<String> 明细表行字段按数组顺序排列,数组中保存的是行号

<static> {rowIndex} Sucang.detail.getRowIndexByOrder(String, Number)
根据行顺序号获取行的索引号,正常情况下是相等的,当行有中间增加或删除时,行顺序和行索引号就不对应.
Parameters:
{prefix} String
明细表单的前缀
{order} Number
行的顺序号
Returns:
{rowIndex} Number 如果顺序号超出显示明细的行数,则返回-1

<static> {ids} Sucang.detail.getRowIndexs(String, boolean)
返回明细行的行号
Parameters:
{formPrefix} String
F+表单的前缀编号,见FormInfo.indexFlag,如:F103,F18
{blSelected} boolean
可以为空,true或false,空时表示获取所有行号,true表示只获取选中,false获取未选中的行号。version>2.201有该选项可用
Returns:
{ids} Array<Number>

<static> Sucang.detail.reorder(String[必须], Function[可选])
用于在编辑模式的明细前<s:rowid prefix="F1" value="_${ch.id}" withorder="true" /"> 如果自定义序号格式,请实现reorderCallback(i)回调函数
Parameters:
{preifx} String[必须]
- 明细表的前缀ID
{textFun} Function[可选]
- 用于序号的文本,默认为【0、】。参数定义为function(i)返回需要显示的文本

<static> Sucang.detail.selectAll(String, boolean|Object)
选中所有明细行,如Sucang.detail.selectAll('F34',this);
Parameters:
{formPrefix} String
子表单的前缀编号,见FormInfo.indexFlag
{obj} boolean|Object
当为true/false时表示全选中或全不选,object时指向input.checked的值

<static> Sucang.detail.setRowReadonly(String, Number, boolean, Object)
设置行数据为只读,执行该操作后无法还原为编辑状态。
Parameters:
{prefix} String
//明细表前缀
{rowindex} Number
//行号,可能因为有删除行,行号不总是连续的。需要使用getRowIndexs(prefix)方法获取
{noSaveForm} boolean
//表示当前行数据不保存到服务器仅显示。 值为true时会删除表单控件但不会影响公式的计算。如果参数为1则删除控件对象会影响公式计算。
{renderData} Object
//用于明细文本只读后,需要显示格式化的数据模板.例:{'字段名':'format ${value}后的值.',..}
Returns:
执行成功返回true

Documentation generated by JsDoc Toolkit 2.3.0 on Wed Jun 05 2019 11:25:20 GMT+0800 (CST)