javascript问题 - firefox

时间:2012-06-29 05:59:02

标签: javascript html dom

大家好,为什么这段javascript代码无法在firefox上运行

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

3 个答案:

答案 0 :(得分:2)

我不知道这个功能来自何处,所以我不能对此说些什么:

files.insertAdjacentHTML('BeforeEnd',adh);

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

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

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

nfiles++

答案 1 :(得分:2)

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

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

参考:jsFiddle

function Expand() {
    nfiles++;
    var files = document.getElementById('test');
    var adh = '<input type="file" name="File ' + nfiles + '">';
    files.insertAdjacentHTML('afterend', adh);
    return false;
}

答案 2 :(得分:0)

可能是BeforeEnd应该是这样的

beforeend

见这里 insertAdjacentHTML