1. 程式人生 > >JavaScript實現動態增加檔案域表單

JavaScript實現動態增加檔案域表單

在這裡插入圖片描述

<html>
<head>
    <title>動態新增表單元素</title>
</head>

<script language="javascript"> 
    //全域性變數,代表檔案域的個數,並用該變數區分檔案域的name屬性 
    var file_count = 0;
    //增加檔案 域 
    function additem(id) {
        if (file_count > 9) {
            alert("最多10個 ");
            return;
        }
        //定義行變數row;單元格變數cell;單元格內容變數str。 
        var row, cell, str;
        //在指定id的table中插入一行 
        row = eval("document.all[" + '"' + id + '"' + "]").insertRow();
        if (row != null) {
            //設定行的背景顏色 
            row.bgColor = "white";
            //在行中插入單元格 
            cell = row.insertCell();
            //設定str的值,包括一個檔案域和一個刪除按鈕 
            str = '<input onselectstart="return false" class="tf" onpaste="return false" type="file" name="file[' + file_count + ']" style="width:500px" onkeydown="return false;"/>';
            str += " <input type=" + '"' + "button" + '"' + " value=" + '"' + "刪除" + '"' + " onclick='deleteitem(this," + '"' + "tb" + '"' + ");'>";
            //檔案域個數增加 
            file_count++;
            //設定單元格的innerHTML為str的內容 
            cell.innerHTML = str;
        }
    }
    //刪除檔案域 
    function deleteitem(obj, id) {
        var rowNum, curRow;
        curRow = obj.parentNode.parentNode;
        rowNum = eval("document.all." + id).rows.length - 1;
        eval("document.all[" + '"' + id + '"' + "]").deleteRow(curRow.rowIndex);
        file_count--;
    } 
</script>

<body>
    <input type=button value="增加" onclick='additem("tb")' /><br/>
    <table cellspacing="0" id="tb" style="width:400px">
    </table>

</html>