javascript - 如何限制 Kendo UI Web 上传只允许一次上传?

标签 javascript c# asp.net-mvc kendo-ui kendo-asp.net-mvc

我目前正在使用 Kendo UI 使用 MVC3 和 Razor 以及 Entity Framework 将文件上传到数据库。我让它在我网站的几个区域运行良好,除非我需要将它限制为只允许单个上传。我将 multiple 设置为 false,我需要禁止多选,但仍然允许用户多次单击选择按钮来添加文件,这违反了数据库中此字段的要求。

我尝试了一些我认为在他们网站上找到的建议,但他们指的是当前请求中发送的当前选定项目,而不是整个上传列表(见下图)。

<script type="text/javascript">
  function singleFile(e) {
    var files = e.files;
    if (e.files.length > 1) {
      alert('Only one file may be uploaded, cancelling operation...');
      e.preventDefault();
    }
  }
</script>
@(Html.Kendo().Upload()
  .Name("resumeAttachments")
  .Multiple(false)
  .Async(async => async
      .Save("ResumeSave", "File")
  )
  .Events(c => c
      .Upload("resumeOnUpload")
  )
  .Events(c => c
      .Success("resumeOnSuccess")
  )
  .Events(c => c
      .Complete("singleFile")
  )
)

File list - Allowed up upload multiple files, singularly

最佳答案

在收到防止多次上传的要求后,我偶然发现了这个页面。
如果设置正确,“multiple”设置为 FALSE 就可以正常工作。

(虽然您可以使用 Kendo Razor 语法,但请注意,当您查看页面源代码时,.Kendo() 实际上已转换为 .kendoUpload

因此我更喜欢这种javascript 中的语法(在@using 之后):

@using Kendo.Mvc.UI;

<script type="text/javascript">

$(document).ready(function() {
    $("#files").kendoUpload({"multiple":false,
        async: {
            saveUrl: '@Url.Action("Save", "Upload", new { typeOfUploadedFile= @Model.DocName.ToString(), @proposalNo = @Model.ProposalNo.ToString(),  area = ""})',
            removeUrl: '@Url.Action("Remove", "Upload")',
            autoUpload: true
        }
    });
});   

</script>

关于javascript - 如何限制 Kendo UI Web 上传只允许一次上传?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15979935/

相关文章:

javascript - 目标容器不是 DOM 元素 - React 和 GatsbyJS - React-slick Component

javascript - 测试 JSON 中的名称是否可用,如果不可用,则执行其他 JSON 请求

.net - 在 MVC asp.net 中的客户端 PC 上完成下载后,如何删除文件

javascript - 聚类位置数据忽略异常值

c# - 从 UserNamePasswordValidator 到 Principal 的变量

c# - 如何在 C#/Win32 中将文本发送到记事本?

javascript - 如何显示图片

c# - Azure Redis StackExchange.ASP.net MVC 中的 Redis ConnectionMultiplexer

javascript - 无法使用 Tab 键选择 Kendo Multiselect 的数据

javascript - 如何在 ReactJS 中处理多个选择表单