单元格JS复选框,带参按钮传值

一、复选框设置

1.第一个复选框

初始化后:

setTimeout(function() {
	var isAllChecked = true;
	//设置标记状态为选中
	var boxes = _g().getWidgetsByName("boxes");
	//获取当前页的复选按钮控件数组
	if (typeof(boxes[0]) != "undefined") {
		for (i = 0; i < boxes.length; i++) {
			isAllChecked = boxes[i].getValue() == true ? isAllChecked : false;
			//如果控件大于1个,则遍历获取值,一旦出现未选中状态的按钮,则将标记值改为false
		}
	} else {
		isAllChecked = boxes.getValue();
		//如果控件只有1个,则直接获取控件值,并传给标记值
	}
	//_g().setCellValue(0, 0, 0, isAllChecked); //将标记值赋给A1单元格 0 0 0 代表的是 第一个sheet页,第一列 第一行    填报从0 开始
	_g().setCellValue("A1", isAllChecked); //直接写单元格就行,不行再用上边的
}, 50)

 状态改变:

var flag = this.getValue();
//获取当前值
var boxes = _g().getWidgetsByName("boxes");
//获取当前页的复选按钮控件数组
if (typeof(boxes[0]) != "undefined") {
        var configs = [];
        for (i = 0; i < boxes.length; i++) {
                var cr=FR.cellStr2ColumnRow(boxes[i].options.location);
                //获取行列号对象
                configs.push({reportIndex:0,col:cr.col,row:cr.row,value:flag});
                //如果控件大于1个,则遍历将行列号以及值信息插入数组中
                
        }
            _g().setCellsQuick(configs);
        //批量赋值
        //如果模板存在冻结,且被赋值单元格的行高列宽会改变,则需要替换此句为:_g().setCellsValueInBatch(configs);
} else {
        var cr=FR.cellStr2ColumnRow(boxes.options.location);
        //获取行列号对象
        _g().setCellValue(0,cr.col,cr.row,flag);
        //如果控件只有1个,则直接赋值
}

第二个复选框:

 

var isAllChecked = true;
//设置标记状态为选中
var boxes = _g().getWidgetsByName("boxes");
//获取当前页的复选按钮控件数组
if (typeof(boxes[0]) != "undefined") {
	for (i = 0; i < boxes.length; i++) {
		isAllChecked = boxes[i].getValue() == true ? isAllChecked : false;
		//如果控件大于1个,则遍历获取值,一旦出现未选中状态的按钮,则将标记值改为false
	}
} else {
	isAllChecked = boxes.getValue();
	//如果控件只有1个,则直接获取控件值,并传给标记值
}
	//_g().setCellValue(0, 0, 0, isAllChecked); //将标记值赋给A1单元格 0 0 0 代表的是 第一个sheet页,第一列 第一行    填报从0 开始
	_g().setCellValue("A1", isAllChecked); //直接写单元格就行,不行再用上边的

二、按钮获取单元格值

 

var cells = [];
var cellsIds = [];
var cellsIds1 = [];	
var boxes = _g().getWidgetsByName("boxes");

//获取当前页的复选按钮控件数组
if (typeof(boxes[0]) != "undefined") {
        var configs = [];
        for (i = 0; i < boxes.length; i++) {
        	if (boxes[i].selected() == true) {
                var cr=FR.cellStr2ColumnRow(boxes[i].options.location);
			//获取勾选复选框所在行列
			//判断是否勾选
			var a = "'" + contentPane.getCellValue(0, cr.row) + "'";
			//字段1值获取 从A列开始为0,到字段1为第八列
			var 字段1 = contentPane.getCellValue(8, cr.row) ;
			//字段2值获取 从A列开始为0,到字段2为第10列
			var 字段2 = contentPane.getCellValue(10, cr.row) ;
			//字段3值获取 从A列开始为0,到字段3为第17列
			var 字段3 =contentPane.getCellValue(17, cr.row);
			//字段4值获取 从A列开始为0,到字段4为第39列
			var 字段4 =contentPane.getCellValue(39, cr.row);
			cellsIds.push("'" + 字段1 + 字段2  + "'"  ) //输出的值为 '字段1值字段2值'
			cellsIds1.push(字段3)
			cells.push(a);
        		}
		}
	}
if (cells.length == 0) {
		alert("请勾选一笔资料!");
	} 
	else {
		alert(cellsIds1);
		alert(cellsIds);
		if ( cellsIds1.indexOf("判断的值随便什么") == -1){  //复选框选中多个的情况下用这句    //单选框用这句 if (cellsIds1=="判断的值随便什么") {
					var v_sql = "SQL(\"数据库\",\"\  UPDATE 表  SET 字段1='1',字段2=to_date(SYSDATE) WHERE  字段1||字段2 IN ("+cellsIds+")  \",1)";		
					
					//alert(v_sql);
					FR.Msg.confirm("警告", "确定要?", function(value) {
						if (value) {
									FR.remoteEvaluate(v_sql);
									alert("成功!");
									//当发起审批成功之后,静默调用填报事件 
									_g('${sessionID}').verifyAndWriteReport();
									//刷新页面不刷新参数面板
									setTimeout(function() {
										_g().refreshAllSheets();
										//location.reload();
									}, 500)	
	
						} else {
								return false;
								alert("失败!");
						
						}
					})		
				} 
					else {
						alert("请勿重复!");						
			} 
		}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值