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

许拜尔潘索

我无法动态删除输入字段,可以添加字段,但是删除选项不起作用。我正在使用jquery动态添加/删除字段,并为我的布局添加了bootstrap 3。

这是我的标记:

    <div class="row margin-bottom">
        <div class="col-md-12 col-sm-12">
            <button type="submit" class="add-box btn btn-info"><span class="glyphicon glyphicon-plus"></span> Add More Fields</button>
        </div>
    </div>
    <?php $attributes = array('class' => 'form-horizontal', 'role' => 'form'); echo form_open_multipart('config/upload_image', $attributes);?>
        <div class="text-box form-group">
            <div class="col-sm-4"><input type="file" class="" name="txtImage[]" id="imageinput"/></div>
        </div>
        <div class="form-group">
            <div class="col-sm-2">
               <button type="submit" class="btn btn-primary"><span class="glyphicon glyphicon-upload"></span> Upload</button>
            </div>
        </div>
    <?php echo form_close();?>

这是我的jQuery代码:

     $(document).ready(function(){
     $('.add-box').click(function(){
        var n = $('.text-box').length + 1;
        if(n > 5)
        {
            alert('Only 5 Savy :D');
            return false;
        }
        var box_html = $('<div class="text-box form-group"><div class="col-sm-4"><input type="file" class="" name="txtImage[]" id="imageinput'+ n +'"/></div><div class="col-sm-2"><button type="submit" class="remove-box btn btn-danger btn-sm"><i class="fa fa-minus-circle fa-lg"></i></button></div></div>');
        $('.text-box:last').after(box_html);
        box_html.slidedown('slow');
    });

    $('.form-horizontal').on('click', '.remove-box', function(){
            $(this).parent().remove();
        return false;
    });

});
混沌天底

错误发生在“删除”按钮单击事件处理程序中。您需要删除最接近的表单组而不是直接父组:

$('.form-horizontal').on('click', '.remove-box', function(){
    $(this).closest(".form-group").remove();
    return false;
});

查看此bootply以获取工作示例:http : //www.bootply.com/x8n3dQ6wDf

编辑

对于删除动画,您可以像这样使用jQuery slideUp:

$('.form-horizontal').on('click', '.remove-box', function(){
    var formGroup = $(this).closest(".form-group");
    formGroup.slideUp(200, function() {
        formGroup.remove();
    });
    return false;
});

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

添加文件类型的动态输入字段,并预览

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

使用jQuery添加和删除输入字段

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

如何控制动态添加的输入类型文件?

如何使用jquery动态地自动填充到添加/删除字段中?

基于使用jquery添加或删除div更新输入字段值

如何使用 Json 对象填充动态添加的输入字段

使用jQuery将文件添加到输入类型文件

动态添加输入字段值 jQuery

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

如何添加输入字段并动态选择?

使用wtforms动态添加输入字段

使用VueJ添加动态输入字段

如何使用Jquery删除隐藏输入字段的Name属性?

动态添加输入字段

动态添加输入字段

如何使用jquery增加动态添加的输入onclick的索引

如何使用Jquery获得添加的输入字段的值?

使用jquery删除输入后,无法重新计算动态添加的输入的总和?

jQuery对照其他动态添加的输入字段验证动态添加的输入字段

使用 React 添加/删除输入字段

使用jQuery添加字段并删除字段

删除动态添加的字段

Symfony2:如何为收集字段类型添加/删除输入表单?

如何使用jQuery添加和删除输入值?

如何使用 JQuery 创建添加和删除输入

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

使用jQuery删除动态列表中的最后一个输入字段