所以,我想要做的是添加多個文本字段並上傳多個文件。用戶只能看到1個字段上傳,直到點擊它,並且正在瀏覽文件。文本字段也一樣。當用戶點擊或開始在文本字段中輸入時,下一個會出現。到目前爲止,我沒有完成目標的運氣。我剛剛開始使用JavaScript,因此我的代碼被嚴重破壞,甚至不值得發佈。當點擊前一個字段時動態添加字段到我的表單
這樣做有什麼不同的方法,你知道利弊嗎?
編輯:這是我嘗試做的很多方法之一。
<form name="form">
<label for="file">Filename:</label>
<input type="file" name="file[0]" id="file[0]" onclick="addForm()" />
</form>
<br />
<script type="text/javascript">
var part1 = '<label for="file">Filename:</label> <input type="file" name="file[';
var part2 = ']" id="file[';
var part3 =']" onclick="form()" /><br />'
var counter = 0;
function addForm()
{
if (document.form.file[counter].click)
{
document.write(part1 + counter + part2 + counter + part3);
counter++;
}
}
</script>
如果你不能打擾顯示你的代碼(我們甚至可以一起工作,和提高,斷碼),那麼我們爲什麼還要不厭其煩地嘗試幫幫我?另外,請不要在你的問題中使用不必要的褻瀆。 –
羅傑那個大衛! =) –
1)你的變量和函數都有相同的名字。該函數將替換該變量。 2)'document.write(var form)'是無效的javascript。它將是'document.write(form)',但是你會想要改變函數名或變量名,使它們不匹配。 3)'document.write'將傳遞的文本添加到文檔的末尾,所以它不會被添加到你的表單元素。使用'appendChild' 4)我相信你所有的標籤都會指向第一個文件輸入。你最好離開標籤的'for'屬性並在其中嵌入文件輸入。 – Shmiddty