批量添加

今天遇到了批量添加,记录一下

<input class="btn btn-sm tianjia" onclick="skip('${ctx}/ProjectTaskManager/submitAddTask/${ttcCaseKey}')" 
type="button" value="&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;添加"/>

<td id="title"><input id="chk_all" type="checkbox" width="10px;"
onclick="javascript:allCheck()"></td>

<td> id="title" width="30px">
	<input type="checkbox" id="chk_sub_checkBox" name="chk_sub_checkBox"
	       value="${task.projectTaskID }" onclick="javascript:checkT_F()" />
</td>

function skip(controllerUrl, keyString) {
	var alertMessage = "您没有勾选要操作的记录,请先勾选!";
	//判断是否勾选复选框,如果没有勾选,提示alertMessage的信息
	var obj = document.getElementsByName("chk_sub_checkBox");
	var j = 0;
	for(var i=0;i<obj.length;i++) {
		if(obj[i].checked==true) {
			j ++;
			break;
		}
	}
	if(j < 1) {
		alert(alertMessage);
		return false;
	}
		var projectTaskIDs=document.getElementsByName("chk_sub_checkBox");
		var keyString = "?keys=";
	    for(var i=0;i<projectTaskIDs.length;i++){
	    	if(projectTaskIDs[i].checked && projectTaskIDs[i].value != ""){
	    		keyString+=projectTaskIDs[i].value+=",";
	    	}
	    }
	  //controller对应的url加上传过去多条记录的主键keys
	  	document.forms[0].action =controllerUrl+keyString;
		document.forms[0].submit();
}

大致就是通过checkbox,通过document.getElementsByName 获取选中的主键

然后将获取的主键,组成一长串key,用,隔开

然后通过URL传值,把key传值后台

在后台

String []projectTaskIDs = keys.split(",");

然后,通过for循环进行处理

猜你喜欢

转载自blog.csdn.net/qq_35815781/article/details/81435182