javascript onclick创建元素(标签)

时间:2017-07-05 11:50:08

标签: javascript jquery html

我目前正在开发一个webapp,草稿链接:http://webtrickssolutions.in/ayna/new-Building.html#

我有javascript编码问题,按下" OK"按钮,它应该在填充数据下方添加一行"语言"和"文字" /新行应该是Label。例如,如果我添加两次:

英语" BuildingName01" (删除图标) 阿拉伯语" XXXXX05" (删除图标)

它应该从下拉菜单中删除英语和阿拉伯语,因为我无法选择语言两次。

目前的javascript代码是:

<script type="text/javascript">
    $(document).ready(function(){       

        $('.del').live('click',function(){
            $(this).parent().parent().remove();
        });

        $('.add').live('click',function(){
            $(this).val('Delete');
            $(this).attr('class','del');

            var appendTxt = "<tr><td><select class='form-control form-control-bottom lang' name='input_box_one[]'><option>Language</option><option>English</option><option>Hindi</option></select></td> <td><input type='text' name='input_box_two[]' /></td> <td><input type='button' class='add' value='Ok' /></td></tr>";

            $("#options-table tr:first").before(appendTxt);         
        });        
    });
</script>

2 个答案:

答案 0 :(得分:0)

单击“确定”按钮,您可以删除特定选项:

var item = "Hindi";
$("select option:contains('"+item+"')").remove();

答案 1 :(得分:0)

如果要删除特定元素,可以通过

删除
$("#selectBox option[value='English']").remove();

但是,要使其成为动态,您必须先获取所选索引的值:

var option = $('#selector :selected').val()

关注,使用动态选择器删除它,例如:

$("#selectBox2 option[value='" + option + "]")

编辑:更新帖子:

我建议你越往下走,这个对象就会越复杂。因此,我建议不要通过字符串动态添加元素,而是使用数组生成它。这可以在Fiddle中看到。显然,这使用了更新版本的jQuery,因此可以替换&#39; On&#39;与&#39; Live&#39;方法。

首先创建一个新的select元素:

var newSelect = $('<select/>');

然后,将当前下拉列表中的每个元素添加为此选择

的选项
$(this).parent().find("option:not(:selected)").each(function() {
    newSelect.append($('<option/>').html($(this).val()));
});

&安培;最后将其附加到文档

$("#options-table").before(newSelect);