【问题标题】:Why is there an undefined/hidden element in my form?为什么我的表单中有未定义/隐藏的元素?
【发布时间】:2011-06-09 22:59:48
【问题描述】:

我在一个表单中有 3 个输入。但是,当我使用 funciton is() 序列化数据时,在数组中的元素 0 处发现了第 4 个字段。我可以通过从 1 开始循环来解决此问题,但有人知道这是什么吗?

IE 的调试输出如下所示

"undefinedf0a=on&f0b=&f0c="

对于 var b。

f0a、f0b 和 f0c 是我的输入名称,“未定义”是这里的关注点。

function is(a)
  {
  var b;
  var c = document.forms[a].elements;   
  // test_input_signup(list)
  if(1)
    {
    for(i=0;i<c.length;i++) 
      {     
      b += c[i].name+"="+c[i].value+"&"; 
      }
      b = b.slice(0, -1)
    }
    return b;
  }

【问题讨论】:

  • 只是我可能会学到一些东西,if(1){} 的目的是什么?
  • 能否把表单的HTML代码贴出来,可以是没有name属性的表单域。

标签: javascript arrays forms


【解决方案1】:

你需要将b初始化为一个空字符串:

var b = '';

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-10
    • 2013-04-08
    • 1970-01-01
    • 2018-06-06
    相关资源
    最近更新 更多