如何使用循环将数组每个元素分别展示在独立的textbox文本框中
问题原因
- 数组定义格式错误:你示例的
arr = ["1"-"2"-"3"-"4"-"5"]不符合语法规范,从数据库取到的应该是用-拼接的字符串,正确初始值应为字符串格式。 - 多包了一层数组:拆分后的
conv_arr本身已经是元素数组,var myArray = [conv_arr]会把它套成二维数组,循环时只会遍历1次。 - 输入框创建逻辑错误:input元素创建在循环外部,全程只生成1个输入框,每次循环仅修改它的值、重复追加同一个元素,不会生成新输入框。
修正后代码
// 从数据库获取的拼接字符串示例 const arr = "1-2-3-4-5"; // 拆分得到元素数组 const convArr = arr.split("-"); // 循环遍历每个元素,每次都创建新的输入框 convArr.forEach(item => { const input = document.createElement('input'); // 设置输入框类型为text,也可以根据需要调整 input.type = 'text'; // 填充当前元素值 input.value = item; // 追加到页面 document.body.appendChild(input); // 可选:给输入框加间距,优化展示效果 input.style.marginRight = '8px'; })
运行以上代码就会生成你需要的多个独立输入框,每个输入框对应一个数组元素。
内容的提问来源于stack exchange,提问作者Timato1
相关产品推荐
相关产品推荐

