如何将表中复选框的值存储到数组中并传递到另一个JSP页面上?

时间:2018-10-23 23:52:18

标签: jsp

if i check 3 checkboxes from attached image

我要选中多个复选框并将其值存储到数组中。

我正在使用下面的代码,但它仅存储一个值。

<input type="checkbox" id="btnApprove" name="btnApprove" onclick="getTaskId();"  value="1" />
   <input type="checkbox" id="btnApprove" name="btnApprove" onclick="getTaskId();"  value="2" />

   <script type="text/javascript">
function getTaskId(){
    var id=Array();
    id = document.getElementById('btnApprove').value;
    console.log(id);
    
    
    
}
</script>

2 个答案:

答案 0 :(得分:0)

同一文档中的相同ID无法检测,因此您必须避免使用相同ID,您可以这样做

<input type="checkbox"  name="btnApprove" onclick="getTaskId(this);"  value="1" />
   <input type="checkbox"  name="btnApprove" onclick="getTaskId(this);"  value="2" />


<script type="text/javascript">
function getTaskId(evnt){
    var id = evnt.value;
    console.log(id);



}
</script>

对于“组”复选框结果作为选中项目的数组,您可以像下面这样使用

<html>
<body>
<input type="checkbox"  name="btnApprove[]" onclick="getTaskId();"  value="1" />
   <input type="checkbox"  name="btnApprove[]" onclick="getTaskId();"  value="2" />
  <input type="checkbox"  name="btnApprove[]" onclick="getTaskId();"  value="3" />
</body>

</html>

<script type="text/javascript">
function getTaskId(){
var array = []
var checkboxes = document.querySelectorAll('input[type=checkbox]:checked')

for (var i = 0; i < checkboxes.length; i++) {
  array.push(checkboxes[i].value)
    }
  console.log(array);   
}
</script>

答案 1 :(得分:-1)

我找到了解决方案。

			function printChecked(){
       
				var items=document.getElementsByName('btnApprove');
				var selectedItems="";
				for(var i=0; i<items.length; i++){
					if(items[i].type=='checkbox' && items[i].checked==true)
						selectedItems+=items[i].value+",";
				}
				
            console.log(selectedItems);
			}			
<input type="checkbox" id="btnApprove" name="btnApprove"  value="1" checked/>
<input type="checkbox" id="btnApprove" name="btnApprove"  value="2" checked/>
<input type="checkbox" id="btnApprove" name="btnApprove"  value="3" checked/>
<input type="submit" name="RunScripts" value="Run Scripts"  onclick="printChecked();"/>