向文本发送无穷多个复选框值

时间:2012-05-15 05:27:33

标签: javascript text checkbox

我有一个带有多个行的复选框表,我想要做的是如果我选择一个复选框,该值应该转到文本区域,所以我先将所有元素存储在数组中,但它不会发生,你可以看到我添加警报以及检查出来。请帮忙。

window.onload = function () { 
    var oRows = document.getElementById('rnatable').getElementsByTagName('tr');
    var iRowCount = oRows.length;
    alert('Your table has ' + iRowCount + ' rows.');

    var i = 0;
    cb = new Array(iRowCount);
    while (i <= iRowCount) {
        var id = 'check'+ i;
        cb[i] = document.getElementById(id);
        i++;
    }
    //alert('Your table has ' + cb[i].value + ' rows.');
    for(var a=0; a < iRowCount; a++) {
        var fasta = document.getElementById('fasta');
        if(cb[a].checked) {
            fasta.value = cb.value + ","; 
        };
    };
}

1 个答案:

答案 0 :(得分:1)

您是否在控制台中看到错误?我怀疑当while (i <= iRowCount)运行时i === iRowCount document.getElementById(id)没有产生结果,然后当你使用该值时,会发生不好的事情。

此外,通过fasta循环的每一圈都会覆盖之前的值。你可能想要fasta.value += cb.value + ",";之类的东西。