在没有按钮操作的情况下在javascript中获取所选复选框名称

时间:2015-07-09 07:05:18

标签: javascript arrays

我必须在JavaScript中获取所有选中的复选框值而不在表单中执行任何按钮操作并显示在我的jsp页面中。

这是我从数据库中获取值的代码。

df <- as.data.frame(matrix(range(data$timestamp), ncol = 2))
df[] <- lapply(df, as.Date)
names(df) <- c('from', 'to')

我必须选中多个复选框并获取这些名称。

1 个答案:

答案 0 :(得分:0)

此处namesArray将关闭所有已选中的复选框value

您可以遍历此数组并在JSP页面上显示值。 对不起,我对JSP没有太多的了解,但我猜这是可能的。 js代码是,

var namesArray = [];
var checkBoxes = document.querySelectorAll('input[type=checkbox]');
for(var i = 0; i < checkBoxes.length; i++) {
    checkBoxes[i].addEventListener('change', function() {
        if(this.checked){
            console.log(this.value);
namesArray.push(this.value);
console.log(namesArray);
                }
    });
}

编辑: - 为div添加值并在会话中保存值

要将值添加到div use,

  var namesArray = [];
    var div = document.getElementById('divID'); //mention your div's id
        var checkBoxes = document.querySelectorAll('input[type=checkbox]');
        for(var i = 0; i < checkBoxes.length; i++) {
            checkBoxes[i].addEventListener('change', function() {
                if(this.checked){
                    console.log(this.value);
                    div.innerHTML = div.innerHTML + this.value + ' ';
                    namesArray.push(this.value);
                    console.log(namesArray);
                        }
            });
        }

然后,要将这些值发送到服务器,请在表单提交时使用ajax,将namesArray作为data发送。 看看这些,example1example2example3等。 要在会话中保存这些值,请在servlet中编写一些逻辑。在key-value中存储Session对,密钥为String或其他内容,值为字符串数组,即在此情况下为复选框的值。所以你可以通过Session.get('your key')获得数组。希望这会有所帮助。