繁体   English   中英

读取动态生成的文本框

[英]Reading dynamically generated textboxes

我正在用JavaScript动态生成文本框,但是当我尝试控制台日志时(在将它们传递到ajax post数组之前),我只会得到undefined 我尝试在网上搜索如何操作,但似乎没有什么“成功”。

这是关键部分。

//textbox naming convention is "id"+intlaskubox and I can read them like 
textbox = document.getElementById("id2");

//amount of textboxes generated
var generated = intlaskubox;
console.log(generated);

//this is ok (I can get the value of the box)
textbox = document.getElementById("id" + generated);
console.log(textbox.value);


// (here I get undefined times the amount of boxes generated)
var i = 0;
while (i < generated) {
    cu[i] = document.getElementById("id" + i);
    console.log(cu[i].value);

    i++;
}    

我已经尝试过Firebug和普通的控制台日志,但似乎我做错了。

您忘了初始化数组c吗? 尝试这个:

var i = 1, c = [],generated=5,inputRes=document.getElementById("res");
while (i <= generated) {
    c[i] = document.getElementById("id" + i);
    inputRes.value+=c[i].value;    
    i++;
}

DEMO

因为未在DOM中设置值

你这样改变

while (i < generated ) {
          cu[i] = document.getElementById("id"+i);
          console.log(cu[i].getAttribute("value"));

            i++;
        }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM