2012-06-29 2 views
1

Привет всем Почему этот кусок яваскрипта кода не работает на светлячокJavascript проблема - светлячок

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

Попытка проанализировать проблему с помощью [Firebug] (https://addons.mozilla.org/ EN-US/Firefox/аддон/поджигатель /). – Nick

+0

какая ошибка вы получаете? –

ответ

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; 
} 
+0

Спасибо за ваш комментарий о альтернативном использовании кавычек. Ура! – Tom

+0

Ваш прием. Боковое примечание. Я посмотрел ваши открытые вопросы, чтобы посмотреть, как я могу помочь. Вы должны надеяться, что уделите больше внимания одному из ваших вопросов. Ура! – arttronics

+0

Спасибо! это сработало. – user622639

2

Я не знаю, где эта функция приходит, так что я ничего не могу об этом сказать:

files.insertAdjacentHTML('BeforeEnd',adh); 

Это альтернативный способ написания следующей строки; он чувствует себя чистым для меня, но я должен признать, что это личный вкус:

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

и положить a; после следующей строки:

nfiles++ 
+0

благодарит за помощь – user622639

0

Может быть BeforeEnd должно быть что-то вроде этого

beforeend 

Смотрите здесь insertAdjacentHTML

Смежные вопросы