希望从表单获取所有文本输入,并将它们放入JavaScript警报中。为什么不是';我的代码不工作吗?

希望从表单获取所有文本输入,并将它们放入JavaScript警报中。为什么不是';我的代码不工作吗?,javascript,javascript-events,Javascript,Javascript Events,我的HTML包含一个字段集、六个在表格中格式化的文本输入字段和一个提交按钮。submit按钮包含属性onClick=“check()”,它可以处理更简单的警报,因此我知道这不是问题所在。以下是我的JavaScript: var $ = function (id) { return document.getElementById(id); } function check() { var x = $("myForm"); var y; for (var i=1

我的HTML包含一个字段集、六个在表格中格式化的文本输入字段和一个提交按钮。submit按钮包含属性onClick=“check()”,它可以处理更简单的警报,因此我知道这不是问题所在。以下是我的JavaScript:

var $ = function (id) { return document.getElementById(id); }

function check() {  
    var x = $("myForm");  
    var y;  
    for (var i=1; i < x.length; i++) {  
        y += (x.elements[i].value + "<br />;");}  
    alert("values: <br />" + y)  
    }
var$=function(id){return document.getElementById(id);}
函数检查(){
var x=$(“myForm”);
变量y;
对于(var i=1;i;”;}
警报(“值:
”+y) }

当我点击提交按钮时,我根本没有收到任何警报。我该怎么办?

这可能不是你想要的答案

如果你在Firefox上,安装Firebug插件,打开它,看看你会遇到什么错误

如果您使用的是Chrome,请打开Javascript控制台(Ctrl+Shift+J),查看您的错误


否则:选择你的武器:)

这可能不是你想要的答案

如果你在Firefox上,安装Firebug插件,打开它,看看你会遇到什么错误

如果您使用的是Chrome,请打开Javascript控制台(Ctrl+Shift+J),查看您的错误


否则:选择你的武器:)

应该注意的是,y从来没有定义为默认值。据我所知,与字符串“asdf”连接将导致“undefinedasdf”。另外,dom元素的长度是多少?对于记录,要在警报中包含换行符,请使用
\n
而不是

。首先执行
警报(x)
,查看您是否真的获得了尝试获取的表单。应该注意的是,y从未定义为默认值。据我所知,与字符串“asdf”连接将导致“undefinedasdf”。另外,dom元素的长度是多少?对于记录,要在警报中包含换行符,请使用
\n
而不是

。首先执行
警报(x)
,查看您是否真的获得了要获取的表单。我是在Chrome上做的。当我单击submit时,我得到了这样一个信息:“UncaughtTypeError:无法读取null的属性'length',所以我想暂时将循环中长度为7的部分更改为7。然后它告诉我“UncaughtTypeError:无法读取null的属性'elements'。为什么x为null?如果x为
null
我只能假设在代码执行时没有
myForm
元素。没错!哦。我给元素命名为
myForm
,但是我没有给它一个ID。我是在Chrome上做的。当我单击submit时,我得到了这样一个信息:“UncaughtTypeError:无法读取null的属性'length',所以我想暂时将循环中长度为7的部分更改为7。然后它告诉我“UncaughtTypeError:无法读取null的属性'elements'。为什么x为null?如果x为
null
我只能假设在代码执行时没有
myForm
元素。没错!哦。我已经将元素命名为
myForm
,但是我没有给它一个ID。