删除动态添加的字段

布鲁诺

我在jquery中动态添加字段。但是我也打算动态地消除这些领域。我正在尝试删除它,例如以下示例:

var cars = [
   {colour: "red", },
   {colour: "white", },
   {colour: "black", },
];

var campos_max = 10; 

var x = 0;
$('#add_field').click (function(e) {
e.preventDefault(); 

 if (x < campos_max) {
    $('#listas').append(`<div class="teste"><select class="form-control1 Reff reff${x}" name="Ref[]"></select></div><button class="remove_field" style="background-color: #313348;"><span class="fa fa-trash fa-fw" aria-hidden="true"></span></button>`);
 
}

var html = $(`.reff${x}`);

cars.forEach(element => {
  html.append(`<option value="`+element.colour+`">`+element.colour+`</option>`);
    });
    
    x++;
});

$('#listas').on("click",".remover_campo",function(e) {
    e.preventDefault();
    $(this).parent('.teste').remove();
    x--;
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div id="listas"></div>

<button type="button" id="add_field" class="btn btn-warning caixa"><span class="material-icons">add</span></button>

但这不会删除我添加的字段。

罗里·麦克罗森(Rory McCrossan)

您的代码中有两个问题。首先,按钮类remove_field不是remover_campo其次,.teste该按钮的同级不是父级,因此应使用prev()它来定位它。

此外,您还可以执行以下几项操作来改进代码,例如仅一次构建颜色选项列表,避免使用全局变量(x)来跟踪select已添加的元素数量,并删除“删除” ”按钮本身。尝试这个:

let cars = [
 { colour: "red", },
 { colour: "white", },
 { colour: "black", },
];
let campos_max = 10;
let carOptions = cars.map(o => `<option value=${o.colour}">${o.colour}</option>`).join('');

$('#add_field').click(function(e) {
  e.preventDefault();
  if ($('.teste').length >= campos_max)
    return;
    
  $('#listas').append(`<div class="teste"><select class="form-control1 Reff" name="Ref[]">${carOptions}</select></div><button class="remove_field" style="background-color: #313348;"><span class="fa fa-trash fa-fw" aria-hidden="true"></span>Remove</button>`);
});

$('#listas').on("click", ".remove_field", function(e) {
  e.preventDefault();
  $(this).prev('.teste').addBack().remove();
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div id="listas"></div>

<button type="button" id="add_field" class="btn btn-warning caixa"><span class="material-icons">add</span></button>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何动态添加或删除表单字段?

来自分类Dev

验证可以添加或删除字段的动态表单

来自分类Dev

以动态形式删除相应的输入字段(添加和删除)

来自分类Dev

如何动态添加/删除extjs 3.4中的复合字段

来自分类Dev

动态添加/删除输入类型文件(浏览器字段)

来自分类Dev

重命名动态添加或删除的表单字段

来自分类Dev

使用查询根据单选按钮动态添加/删除输入字段

来自分类Dev

如何使用jQuery动态添加/删除文件类型输入字段?

来自分类Dev

如何使用输入字段动态添加和删除多个<tr>

来自分类Dev

Bootstrap Datepicker动态表单字段添加和删除

来自分类Dev

在php中动态添加和删除字段集-jQuery

来自分类Dev

在angularjs中动态添加和删除文本字段

来自分类Dev

无法使用angular js删除动态添加的表单字段

来自分类Dev

动态添加或删除表单文本字段和标签

来自分类Dev

动态添加或删除文本字段并插入单行

来自分类Dev

验证动态添加的字段

来自分类Dev

如何使用lodash在动态对象的字段中添加数字并删除空字段?

来自分类Dev

三个或更多相同格式的字段-如何动态添加/删除空白字段

来自分类Dev

标记字段选择和取消选择:如何添加和删除动态字段容器以形成

来自分类Dev

动态添加删除按钮

来自分类Dev

动态添加删除类

来自分类Dev

动态添加/删除元素

来自分类Dev

添加/删除输入字段

来自分类Dev

添加值以动态选择字段

来自分类Dev

用jQuery动态添加字段

来自分类Dev

动态添加表单输入字段

来自分类Dev

Javascript动态添加字段(onClick)

来自分类Dev

如何动态添加和删除要由Parsley.js验证的表单字段?

来自分类Dev

如何在Angular 2中动态添加和删除表单字段

Related 相关文章

  1. 1

    如何动态添加或删除表单字段?

  2. 2

    验证可以添加或删除字段的动态表单

  3. 3

    以动态形式删除相应的输入字段(添加和删除)

  4. 4

    如何动态添加/删除extjs 3.4中的复合字段

  5. 5

    动态添加/删除输入类型文件(浏览器字段)

  6. 6

    重命名动态添加或删除的表单字段

  7. 7

    使用查询根据单选按钮动态添加/删除输入字段

  8. 8

    如何使用jQuery动态添加/删除文件类型输入字段?

  9. 9

    如何使用输入字段动态添加和删除多个<tr>

  10. 10

    Bootstrap Datepicker动态表单字段添加和删除

  11. 11

    在php中动态添加和删除字段集-jQuery

  12. 12

    在angularjs中动态添加和删除文本字段

  13. 13

    无法使用angular js删除动态添加的表单字段

  14. 14

    动态添加或删除表单文本字段和标签

  15. 15

    动态添加或删除文本字段并插入单行

  16. 16

    验证动态添加的字段

  17. 17

    如何使用lodash在动态对象的字段中添加数字并删除空字段?

  18. 18

    三个或更多相同格式的字段-如何动态添加/删除空白字段

  19. 19

    标记字段选择和取消选择:如何添加和删除动态字段容器以形成

  20. 20

    动态添加删除按钮

  21. 21

    动态添加删除类

  22. 22

    动态添加/删除元素

  23. 23

    添加/删除输入字段

  24. 24

    添加值以动态选择字段

  25. 25

    用jQuery动态添加字段

  26. 26

    动态添加表单输入字段

  27. 27

    Javascript动态添加字段(onClick)

  28. 28

    如何动态添加和删除要由Parsley.js验证的表单字段?

  29. 29

    如何在Angular 2中动态添加和删除表单字段

热门标签

归档