js動態向頁面中添加表格


我們在實際開發中經常會想要實現如下情況: 
點擊某個按鈕,然后動態的網頁面里面添加一個表格或者一行,這個更加靈活方便。但是實現起來肯定不能像在頁面里面直接寫標簽來的容易,以下是我項目中的代碼,拿過來分享: 

<html>
<head>
<script type="text/javascript">
    var i = 0;
    function deleteTable(myNode) {
        i --;
        document.getElementById('table1').removeChild(myNode.parentNode.parentNode.parentNode.parentNode);
    }
    
    function createImageTable() {
        i++;
        if(i > 1) {
            i --;
            alert("每次只允許添加1道問題");
        } else {
            var t = document.createElement('table');
            //動態添加第一行
            var tr1 = t.insertRow(-1);
            var td11 = tr1.insertCell(-1);
            td11.align="right";
            td11.width="180";
            var td12 = tr1.insertCell(-1);
            //設置內容和屬性    
            td11.innerHTML = "題目 :";
            td12.innerHTML = "<input type='text' name='textTitle' id='textTitle' /><input type='hidden' name='quesLeixing' value='image' id='quesLeixing'/>         <input type=button value='刪除該題' onclick='deleteTable(this)'/>";
            //動態添加第二行
            var tr1 = t.insertRow(-1);
            var td11 = tr1.insertCell(-1);
            td11.align="right";
            td11.width="180";
            var td12 = tr1.insertCell(-1);
            //設置內容和屬性    
            td11.innerHTML = "添加圖片文件 :";
            td12.innerHTML = "<input type='file' name='myFile' id='imageFile' />";
            //添加第三行
            var tr2 = t.insertRow(-1);
            var td11 = tr2.insertCell(-1);
            td11.align="right";
            var td12 = tr2.insertCell(-1);
            //設置內容和屬性    
            td11.innerHTML = "試題類型 :";
            td12.innerHTML = "<input type='radio' name='textQuesType' value='single' checked='checked'/>單選題      <input type=radio name='textQuesType' value='multiple'/>多選題";
            //添加第四行
            var tr3 = t.insertRow(-1);
            var td31 = tr3.insertCell(-1);
            td31.align="right";
            var td32 = tr3.insertCell(-1);
            //設置內容和屬性    
            td31.innerHTML = "選項1 :";
            td32.innerHTML = "<input type='text' name='textOption[0].optionName' id='textOption[0].optionName' />是否是正確答案:<input type='checkbox' name='answer' value='0'/>";
            //添加第五行
            var tr3 = t.insertRow(-1);
            var td31 = tr3.insertCell(-1);
            td31.align="right";
            var td32 = tr3.insertCell(-1);
            //設置內容和屬性    
            td31.innerHTML = "選項2 :";
            td32.innerHTML = "<input type='text' name='textOption[1].optionName' id='textOption[1].optionName' />是否是正確答案:<input type='checkbox' name='answer' value='1' />";
            //添加第六行
            var tr3 = t.insertRow(-1);
            var td31 = tr3.insertCell(-1);
            td31.align="right";
            var td32 = tr3.insertCell(-1);
            //設置內容和屬性    
            td31.innerHTML = "選項3 :";
            td32.innerHTML = "<input type='text' name='textOption[2].optionName' id='textOption[2].optionName' />是否是正確答案:<input type='checkbox' name='answer' value='2' />";
            //添加第七行
            var tr3 = t.insertRow(-1);
            var td31 = tr3.insertCell(-1);
            td31.align="right";
            var td32 = tr3.insertCell(-1);
            //設置內容和屬性    
            td31.innerHTML = "選項4 :";
            td32.innerHTML = "<input type='text' name='textOption[3].optionName' id='textOption[3].optionName' />是否是正確答案:<input type='checkbox' name='answer' value='3' />";
            //添加第八行
            var tr3 = t.insertRow(-1);
            var td31 = tr3.insertCell(-1);
            td31.align="right";
            var td32 = tr3.insertCell(-1);
            //設置內容和屬性    
            td31.innerHTML = "選項5 :";
            td32.innerHTML = "<input type='text' name='textOption[4].optionName' id='textOption[4].optionName' />是否是正確答案:<input type='checkbox' name='answer' value='4' />";
            t.setAttribute("frame", "below");
            t.setAttribute("width", "676");
            //t.setAttribute("border", "1");
            t.setAttribute("bordercolor", "#818181");
            document.getElementById('table1').appendChild(t);
        }
    }
</script>

</head>
<body>
                <font color="#B3171C" size="5">添加測評問題</font><p/>
                <table width="677" border="0" id="quesTable">
                    <tbody>
                        <tr>
                            <td colspan="3" align="center">選擇添加試題類型:
                            <input type="button" name="addtext" value="圖片類型" onclick="createImageTable()" /> 
                            </td>
                        </tr>
                    </tbody>
                </table>

        </form>
    </div>
</body>
</html>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM