我是JavaScript的新手,我无法弄清楚为什么这段代码不起作用。我想在元输入表中输入用户输入数据并让他们单击[输入]以在每列的所有行中输入数据,例如,如果为出生时输入12/22/2012并单击输入,男性和女性餐桌上应填写“出生”下的所有字段。我将页面中的html代码复制到jsfiddle,http://jsfiddle.net/hopup/h2jjd/3/
任何帮助表示赞赏,请记住我是JavaScript的新手,所以建设性的批评会很好。
这是Javascript
编辑2:对我的代码进行了一些更改,我越来越近了吗?它仍然无效。编辑3:这适用于chrome,但不适用于Firefox。有什么想法吗?
http://jsfiddle.net/hopup/h2jjd/5/< - 检查一下
function fill (colname) {
var numRows, i, toCopy, iterated_name;
numRows = document.getElementById('malesTable').rows.length + document.getElementById('femalesTable').rows.length - 2;
toCopy = document.getElementById(colname.id).value;
i = 1;
for (i; i <= numRows; i++){
iterated_name = colname.id + "_" + i;
document.getElementById(iterated_name).value = toCopy;
}
}
答案 0 :(得分:2)
该行
document.myform.count.value = document.getElementByName(name);
似乎很奇怪。我发现了三个错误:
document.myform.elements[count]
getElement/s/ByName
方法,它返回元素的NodeList。您可能希望使用ID,getElementById()
只返回具有唯一ID的一个元素。答案 1 :(得分:0)
JavaScript源文件中存在非法字符。
编辑看起来像一个非西方的字形,U + 8B80 - 读你在问题中发布的版本不一样,至少不完全相同。
编辑啊durrr它是UTF-8,当然不是UTF-16。正如@ Pumbaa80指出的那样,这是一个零宽度的空间。哦,具体来说,这是在mausdb.js文件中。