运行 for 循环以打印 JavaScript 中的输入框类型
Running a for loop to print type of input boxes in JavaScript
我有这个想法,我想尝试一下。我有一个表单,里面有一定数量的输入元素。我想运行一个函数,该函数将使用两个 for 循环打印出输入元素的类型。这是我尝试过的代码
function check(){
var i = document.forms.length;
var j = document.forms[i-1].elements.length;
//alert(i);
// alert(j);
for (var k=0; k<=i;k++){
//alert(l);
for (var l=0;l<=j;l++){
//alert(l);
alert(document.forms[k].elements[l].type);
}
}
}
代码仅打印出窗体中第一个元素的类型。我做错了什么?
获取
页面中的所有表单,遍历每个表单,在第一个循环中获取特定于当前正在迭代的表单的元素,循环通过元素并获取类型,尝试执行以下操作:
var frms = document.forms;
for(var f = 0; f < frms.length; f++ ) {
var elems = frms[f].elements;
for(var e = 0; e < elems.length; e++ ) {
console.log( elems[e].type );
}
}
演示:: js小提琴
你能使用 querySelectorAll?
var elems = document.querySelectorAll("form input");
for(var i in elems) {
console.log(elems[i].type);
}
如果没有,您需要在第一个for
循环中计算表单的元素:
function check(){
var i = document.forms.length;
for (var k=0; k<i;k++){
// Check the element length here
var j = document.forms[k].elements.length;
for (var l=0;l<j;l++){
alert(document.forms[k].elements[l].type);
}
}
}
我尝试了您的脚本,并进行了以下修改:
第一个循环for (var k=0; k<=i-1;k++)
{
第二环for (var l=0;l<=j-1;l++){
否则,您会出现错误,导致所有循环执行 +1 次。
我写了简单的jsfiddle示例 - http://jsfiddle.net/REb64/
function check(){
for (var i=0; i < document.forms.length; i++){
for (var j=0; j < document.forms[i].elements.length; j++){
alert(document.forms[i].elements[j].type);
}
}
}
相关文章:
- 在<输入类型=“;文件“/>
- 如何将输入类型值或id从一个jsp传递到另一个jsp页面
- 可以't将几个数字设置为<输入类型=“;数字“>
- 在输入类型日期中设置日期
- 如何将键入的文本从一个输入类型的文本复制到另一个
- 输入类型按钮返回历史记录并返回顶部
- 从HTML表单发布blob的表单输入类型是什么
- 输入类型文件的未捕获类型错误
- 如何在jQuery Mobile中设置100%宽度的输入类型日期
- 输入类型=文件验证停止其他输入类型验证
- 如何显示在输入类型文件中选择的文件
- jQuery Modal Popup-回发后输入类型设置为null
- 在控制器中将输入类型时间更改为秒
- 更改具有相同id的输入类型的所有值
- 对于每个输入类型,使用javascript获取值
- 输入类型范围在angularjs重复内不起作用
- 我如何使HTML5<输入类型=月份>以在所有浏览器上工作
- 如何调用两个函数是一种html输入类型
- 如何使按钮作为输入类型文件
- 可以设置输入类型=文件的文本框的高度