簡體   English   中英

刪除動態生成的字段

[英]Delete dynamically generated fields

我能夠生成動態字段,但是當我嘗試刪除字段而不是刪除刪除按鈕前面的元素時,它會從最后一個向第一個刪除

    <script>
    $(document).ready(function(){
        var max_fields = 10;
        var wrapper = $(".more");
        var add_button = $(".add");
        var x = 1;
        $(add_button).click(function(e){
            e.preventDefault();
            if (x < max_fields){
                x++;
                $(wrapper).append('<div id="box'+x+'" class="row"><div class="col-sm-3 mb-3"><select name="feeType[]" class="form-control shadow-sm" required><option value="" selected disabled>Select Fee</option><option value="Admission">Admission Fee</option><option value="Development">Development Fee</option><option value="Annual">Annual Fee</option><option value="Tuition">Tuition Fee</option></select></div><div class="col-sm-3 mb-3"><input type="number" name="amount[]" class="form-control shadow-sm" placeholder="Amount" required></div><div class="col-sm-3 mb-3"><button class="delete btn btn-danger shadow-sm">Delete Fields</button></div></div>'); //add input box
            }else{
                alert('You Reached the limits')
            }
        });
        $(wrapper).on("click", ".delete", function(e){
            e.preventDefault();
            $('#box'+x).remove();
            x--;
        })
    });
    </script>

因為x的值將始終只是動態創建的元素的數量。

一個可能的解決方案是找到被點擊的“刪除”按鈕並刪除它的父級。 替換$('#box'+x).remove(); 用這個$(this).parents('.row').remove();

一個工作小提琴示例: https://jsfiddle.net/3L986nbj/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM