1

如何将 Kendo 上传限制为 CSV 文件?

剃刀:

@(Html.Kendo().Upload()
        .Name("import-file")
        .Multiple(false)
        .ShowFileList(true)
        .Async(a => a
            .Save("Save", "Import")
            .Remove("Remove", "Import")
            .AutoUpload(false)
        )
        .Events(events => events.Select("App.Import.select"))
    )

Javascript:

 Import: {
    select: function (event) {
        $.each(event.files, function (index, value) {
            if (value.extension !== '.csv') {
                alert("not allowed!");
            }

            console.log("Name: " + value.name);
            console.log("Size: " + value.size + " bytes");
            console.log("Extension: " + value.extension);
        });
        var breakPoint = 0;
    }    
}

我的想法是在选择事件中删除文件。我怎样才能做到这一点?

问候, 马尔科

4

1 回答 1

4

根据此处的文档,您应该做的是取消事件(e.preventDefault())。

在此处输入图像描述

因此,由于您不允许选择多个文件,您应该做的是:

select: function (event) {
    var notAllowed = false;
    $.each(event.files, function (index, value) {
        if (value.extension !== '.csv') {
            alert("not allowed!");
            notAllowed = true;
        }

        console.log("Name: " + value.name);
        console.log("Size: " + value.size + " bytes");
        console.log("Extension: " + value.extension);
    });
    var breakPoint = 0;
    if (notAllowed == true) e.preventDefault();
}    

这里的例子:http: //jsfiddle.net/OnaBai/n5Y2s/1/

于 2014-05-20T15:08:21.753 回答