Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/437.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript动态添加/删除行,其中包含下拉列表_Javascript_Jquery_Html - Fatal编程技术网

使用javascript动态添加/删除行,其中包含下拉列表

使用javascript动态添加/删除行,其中包含下拉列表,javascript,jquery,html,Javascript,Jquery,Html,我有一个项目,我必须作出的形式,用户可以在其中添加教育。 我成功地通过(仅仅)输入动态地添加和删除,但当我将下拉列表放入其中时,我遇到了问题。 代码是有效的,但当我点击下拉菜单时,我无法获得任何选项 请参见此处的屏幕截图: HTML Pendidikan 郑江 纳米研究所 科塔 大运 塞科拉·达萨 塞科拉·梅内加·佩塔马 Sekolah Menengah Atas Perguruan Tinggi(D3) Perguruan Tinggi(D4/S1) Perguruan Tinggi(S2)

我有一个项目,我必须作出的形式,用户可以在其中添加教育。 我成功地通过(仅仅)输入动态地添加和删除,但当我将下拉列表放入其中时,我遇到了问题。 代码是有效的,但当我点击下拉菜单时,我无法获得任何选项

请参见此处的屏幕截图:

HTML

Pendidikan
郑江
纳米研究所
科塔
大运
塞科拉·达萨
塞科拉·梅内加·佩塔马
Sekolah Menengah Atas
Perguruan Tinggi(D3)
Perguruan Tinggi(D4/S1)
Perguruan Tinggi(S2)
Perguruan Tinggi(S3)
Javascript

function addRow(tableID) {

        var table = document.getElementById(tableID);

        var rowCount = table.rows.length;
        var row = table.insertRow(rowCount);

        var cell1 = row.insertCell(0);
        var element1 = document.createElement("input");
        element1.type = "checkbox";
        element1.name="chkbox[]";
        cell1.appendChild(element1);

        var cell2 = row.insertCell(1);
        var element2 = document.createElement("select");
        element2.name="jenjang[]";
        cell2.appendChild(element2);

        var cell3 = row.insertCell(2);
        var element3 = document.createElement("input");
        element3.type = "text";
        element3.name = "pendidikan[]";
        cell3.appendChild(element3);

        var cell4 = row.insertCell(3);
        var element4 = document.createElement("input");
        element4.type = "text";
        element4.name = "pendidikanDi[]";    
        cell4.appendChild(element4);

        var cell5 = row.insertCell(4);
        var element5 = document.createElement("input");
        element5.type = "text";
        element5.name = "pendidikanTahun[]";
        cell5.appendChild(element5);


    }

    function deleteRow(tableID) {
        try {
        var table = document.getElementById(tableID);
        var rowCount = table.rows.length;

        for(var i=0; i<rowCount; i++) {
            var row = table.rows[i];
            var chkbox = row.cells[0].childNodes[0];
            if(null != chkbox && true == chkbox.checked) {
                table.deleteRow(i);
                rowCount--;
                i--;
            }


        }
        }catch(e) {
            alert(e);
        }
    }
函数addRow(tableID){
var table=document.getElementById(tableID);
var rowCount=table.rows.length;
var row=table.insertRow(rowCount);
var cell1=行插入单元格(0);
var element1=document.createElement(“输入”);
element1.type=“复选框”;
element1.name=“chkbox[]”;
单元格1.附加子元素(元素1);
var cell2=行插入单元格(1);
var element2=document.createElement(“选择”);
element2.name=“jenjang[]”;
第2单元。附加子元素(元素2);
var cell3=行插入单元格(2);
var element3=document.createElement(“输入”);
element3.type=“text”;
element3.name=“pendidikan[]”;
第三单元附属物(第三单元);
var cell4=行插入单元格(3);
var element4=document.createElement(“输入”);
element4.type=“text”;
element4.name=“pendidikanDi[]”;
第四单元附属物(第四单元);
var cell5=行插入单元格(4);
var element5=document.createElement(“输入”);
element5.type=“text”;
element5.name=“pendidikanTahun[]”;
第五单元附属物(第五单元);
}
函数deleteRow(tableID){
试一试{
var table=document.getElementById(tableID);
var rowCount=table.rows.length;

对于(var i=0;iHey,欢迎使用StackOverflow!这里有一个实际的示例,可以更好地描述您遇到的错误——Javascript控制台中的任何消息(以下是如何在中打开它,以及)?谢谢!如果你打算经常做这类事情,我强烈建议你学习一个数据绑定框架,比如……我还认为jQuery总是很好学的。代码似乎很好。这是JSFIDLE,问题出在哪里?我认为问题是因为你没有在select元素中添加选项标记。下面是一个例子使用循环编辑选项值,您可以根据需要进行更改。
function addRow(tableID) {

        var table = document.getElementById(tableID);

        var rowCount = table.rows.length;
        var row = table.insertRow(rowCount);

        var cell1 = row.insertCell(0);
        var element1 = document.createElement("input");
        element1.type = "checkbox";
        element1.name="chkbox[]";
        cell1.appendChild(element1);

        var cell2 = row.insertCell(1);
        var element2 = document.createElement("select");
        element2.name="jenjang[]";
        cell2.appendChild(element2);

        var cell3 = row.insertCell(2);
        var element3 = document.createElement("input");
        element3.type = "text";
        element3.name = "pendidikan[]";
        cell3.appendChild(element3);

        var cell4 = row.insertCell(3);
        var element4 = document.createElement("input");
        element4.type = "text";
        element4.name = "pendidikanDi[]";    
        cell4.appendChild(element4);

        var cell5 = row.insertCell(4);
        var element5 = document.createElement("input");
        element5.type = "text";
        element5.name = "pendidikanTahun[]";
        cell5.appendChild(element5);


    }

    function deleteRow(tableID) {
        try {
        var table = document.getElementById(tableID);
        var rowCount = table.rows.length;

        for(var i=0; i<rowCount; i++) {
            var row = table.rows[i];
            var chkbox = row.cells[0].childNodes[0];
            if(null != chkbox && true == chkbox.checked) {
                table.deleteRow(i);
                rowCount--;
                i--;
            }


        }
        }catch(e) {
            alert(e);
        }
    }