1.给主页面添加windowDialog对话框组件,给弹出页面添加windowReceiver组件
3.添加触发对话框弹出页面的按钮,并写它的打开对话框页面的事件
Model.prototype.btnSelEnterpriseClick = function(event) {
if (this._dataMain.getCount() === 0)
return;
this.comp("wdSelEnterprise").open();
};
4.如果多选,给弹出w页面的grid组件的multiselect属性设置为true。
5.给给弹出w页面的取消按钮设置事件onClick:{operation:'windowReceiver.windowCancel'}
6.给给弹出w页面的确定按钮设置事件,并传递参数
Model.prototype.btnOKClick = function(event){
var dataMain=this.comp("dataMain");
var gridMain=this.comp("gridMain");
var rows=[];
$.each(gridMain.getCheckeds(),function(i,id){
var row=dataMain.getRowByID(id);
rows.push(row);
});
this.comp("windowReceiver").windowEnsure(rows);
};
public void windowEnsure (object data)
向调用者传送数据并且关闭
Parameters
object data传送的数据
Return Value void
7.接收弹出页面的数据,把它放到相应的地方。
Model.prototype.wdSelEnterpriseReceive = function(event) {
debugger;
var defaultValues = [];
var fEnterpriseGroupID = this._dataMain.getCurrentRowID();
$.each(event.data, function(i, row) {
var defaultValue = {};
defaultValue.fEnterpriseGroupID = fEnterpriseGroupID;
defaultValue.fEnterpriseID = row.getID();
defaultValue.B101 = row.val("B101");
defaultValue.B102 = row.val("B102");
defaultValue.B103 = row.val("B103");
defaultValues.push(defaultValue);
});
if(defaultValues.length ===0)
return;
var options = {
"defaultValues" : defaultValues
};
this._dataDetail.newData(options);
this._dataDetail.saveData();
};
public void onReceive (object event)
[回调型事件].w返回数据事件
Parameters object event
结构如下:
{
"source" : 组件的js对象,
"bindingContext" : 组件绑定的上下文,包含$model、$object等具体请参考bindingContext说明
"data" : 返回的数据,
"sender" : 发送数据的组件js对象,这里一般WindowReceiver组件
}
Return Value void
public List newData (Object options)
业务数据新增方法,支持返回多行
//新增两行数据到最后,并且给出sName和sCode的默认值
var data = this.comp('mainData');
var options = {
defaultValues : [
{sName:'a1',sCode:'b1'},
{sName:'a2',sCode:'b2'}
]
};
data.newData(options);
2.设置windowDialog对话框组件的src属性,就是连接那个弹出对话框页面
设置windowDialog对话框组件的title属性,给弹出对话框页面添加标题
3.添加触发对话框弹出页面的按钮,并写它的打开对话框页面的事件
Model.prototype.btnSelEnterpriseClick = function(event) {
if (this._dataMain.getCount() === 0)
return;
this.comp("wdSelEnterprise").open();
};
4.如果多选,给弹出w页面的grid组件的multiselect属性设置为true。
5.给给弹出w页面的取消按钮设置事件onClick:{operation:'windowReceiver.windowCancel'}
6.给给弹出w页面的确定按钮设置事件,并传递参数
Model.prototype.btnOKClick = function(event){
var dataMain=this.comp("dataMain");
var gridMain=this.comp("gridMain");
var rows=[];
$.each(gridMain.getCheckeds(),function(i,id){
var row=dataMain.getRowByID(id);
rows.push(row);
});
this.comp("windowReceiver").windowEnsure(rows);
};
public void windowEnsure (object data)
向调用者传送数据并且关闭
Parameters
object data传送的数据
Return Value void
7.接收弹出页面的数据,把它放到相应的地方。
Model.prototype.wdSelEnterpriseReceive = function(event) {
debugger;
var defaultValues = [];
var fEnterpriseGroupID = this._dataMain.getCurrentRowID();
$.each(event.data, function(i, row) {
var defaultValue = {};
defaultValue.fEnterpriseGroupID = fEnterpriseGroupID;
defaultValue.fEnterpriseID = row.getID();
defaultValue.B101 = row.val("B101");
defaultValue.B102 = row.val("B102");
defaultValue.B103 = row.val("B103");
defaultValues.push(defaultValue);
});
if(defaultValues.length ===0)
return;
var options = {
"defaultValues" : defaultValues
};
this._dataDetail.newData(options);
this._dataDetail.saveData();
};
public void onReceive (object event)
[回调型事件].w返回数据事件
Parameters object event
结构如下:
{
"source" : 组件的js对象,
"bindingContext" : 组件绑定的上下文,包含$model、$object等具体请参考bindingContext说明
"data" : 返回的数据,
"sender" : 发送数据的组件js对象,这里一般WindowReceiver组件
}
Return Value void
public List newData (Object options)
业务数据新增方法,支持返回多行
//新增两行数据到最后,并且给出sName和sCode的默认值
var data = this.comp('mainData');
var options = {
defaultValues : [
{sName:'a1',sCode:'b1'},
{sName:'a2',sCode:'b2'}
]
};
data.newData(options);