1

大家好 为什么这段 javascript 代码在 firefox 上不起作用

var nfiles = 1;
function Expand(){
nfiles++
var adh = '<input type="file" name="File '+nfiles+'">';
files.insertAdjacentHTML('BeforeEnd',adh);
return false;
};
4

3 回答 3

2

我不知道这个函数是从哪里来的,所以我不能说什么:

files.insertAdjacentHTML('BeforeEnd',adh);

这是编写以下行的另一种方法;我感觉很清楚,但我必须承认这是个人品味:

var adh = "<input type=\"file\" name=\"File " + nfiles + "\">";

并放一个; 在以下行之后:

nfiles++
于 2012-06-29T06:07:05.267 回答
2

看起来你的变量后面没有分号。

下面显示的是适用于包括 Firefox 在内的所有浏览器的工作Expand function

参考:jsFiddle

function Expand() {
    nfiles++;
    var files = document.getElementById('test');
    var adh = '<input type="file" name="File ' + nfiles + '">';
    files.insertAdjacentHTML('afterend', adh);
    return false;
}
于 2012-06-29T06:10:36.247 回答
0

可能是 BeforeEnd 应该是这样的

beforeend

请参阅此处 insertAdjacentHTML

于 2012-06-29T06:12:08.810 回答