使用jquery清除Bootstrap文件输入插件?

时间:2015-11-13 07:37:51

标签: jquery asp.net-mvc-4 file-upload

我正在使用krajee-file-input-plugin。我想根据文件类型清除所选文件。我尝试了以下代码,但没有结果。

 @Html.TextBoxFor(m => m.PhotoUrl,
                class = "form-control imgUpload", @placeholder = "Please upload Photo",
                @id = "txtPhoto", @type = "file" })

 //fileUpload plugin
$(".imgUpload").fileinput({
    showUpload: false
});


 $(".imgUpload").change(function () {
    var ext = $(this).val().split('.').pop().toLowerCase();
    switch (ext) {
        case 'jpg':
        case 'jpeg':
        case 'png':
        case 'gif':                
            break;
        default:
            $(this).remove();
            alert('This is not an allowed file type.');

    }
});

此处$(this).remove()功能无法正常使用

1 个答案:

答案 0 :(得分:0)

通过下面的代码解决了上述情况。

希望它可能有助于某人:)

$('.imgUpload').on('fileloaded', function (event, previewId) {
    var id = $(this).attr("id");
    var ext = $(this).val().split('.').pop().toLowerCase();
        if (ext == 'jpg' || ext == 'jpeg' || ext == 'png' || ext == 'gif') {
            return true
        }
        else {
            bootbox.alert("You can upload only files of type <strong>jpg ,jpeg ,png ,gif </strong>", function () {
                $("#"+id).fileinput('clear');
            });

        }
});