@using Kendo.Mvc.UI
@using StudentManage.Common.Helper
@model StudentManage.Models.Home.ImportDataFromFileModel
<style>
.hiddenBox {
display: block;
border: none;
width: 0;
height: 0
}
</style>
<script>
var fileName;
function onSelect(e) {
fileName = $("#FileName").val() + getFileInfo(e);
$("#FileName").val(fileName);
}
function onRemove(e) {
fileName = $("#FileName").val().replace(getFileInfo(e), "");
$("#FileName").val(fileName);
} function getFileInfo(e) {
return $.map(e.files, function (file) {
var info = file.name;
return info;
}).join(", ");
}
</script>
<form action="@Url.Action("ImportDataFromFile", "Home")" id="importForm" method="post" class="panel panel-default form-horizontal panel-body">
<div class="form-group">
@Html.RequiredIndicatorLabelFor(m=> m.FileName, new { @class = "col-sm-3 control-label no-padding-right" })
<div class="col-sm-4">
@Html.HiddenFor(m => m.DataSystemName, new { @class = "form-control" })
@(Html.Kendo().Upload().Name("files").Multiple(false).HtmlAttributes(new { accept = ".xls,.xlsx" })
.Events(events => events
.Remove("onRemove")
.Select("onSelect")
))
@Html.TextBoxFor(m => m.FileName, new { @class = "hiddenBox" })
@Html.ValidationMessageFor(m => m.FileName)
</div>
</div>
<div class="form-group">
<div class="col-sm-5 col-sm-offset-3">
<button class="btn btn-info" type="button" id="submitBtn">
确定
</button>
</div>
</div>
</form>
<script>
$(function () {
jQuery.validator.unobtrusive.parse();
$('#importForm').removeData('validator');
$('#importForm').removeData('unobtrusiveValidation');
$.validator.unobtrusive.parse('#importForm');
$("#submitBtn").click(function() {
if (!$("#importForm").valid()){
return false;
}
$("#importForm").submit();
return true;
});
});
</script>

 

Action

        #region 导入导出数据
[HttpGet]
public ActionResult ImportDataFromFile(string dataSystemName)
{
ImportDataFromFileModel model = new ImportDataFromFileModel()
{
DataSystemName = dataSystemName
};
return PartialView(model);
} [HttpPost]
public async Task<ActionResult> ImportDataFromFile(IEnumerable<HttpPostedFileBase> files)
{
//DataTable dataTable = await NpoiHelper.ExcelToDataTable("Sheet1", true, files.First());
//for (int i = 0; i < dataTable.Rows.Count; i++)
//{ // //var enterprise = new Enterprise();
// //enterprise.Id = Guid.NewGuid();
// //if (dataTable.Rows[i][enterpriseNameColumn] != null)
// //{
// // var content = dataTable.Rows[i][enterpriseNameColumn]?.ToString().Trim();
// // var clearName = content.Length < 100 ? content : content.Substring(0, 100);
// // if (enterpriseNames.Contains(clearName)) continue;
// // enterprise.EnterpriseName = clearName;
// //}
//}
return RedirectToAction("Index","StudentManage");
} #endregion

kendo upload必填验证的更多相关文章

  1. RequiredFieldValidator控件--必填验证控件

    RequiredFieldValidator控件: ·RequiredFieldValidator控件也被称之为必填验证控件,顾名思义,也就是与RequiredFieldValidator控件关联的控 ...

  2. WPF验证之——必填验证

    要事先必填验证,首先要重写ValidationRule类的Validate方法,然后在Binding中指定对应的ValidationRule. 第一步:重写ValidationRule的Validat ...

  3. js页面字段的必填验证方法

    https://blog.csdn.net/fn_2015/article/details/73498462 <script type="text/javascript" s ...

  4. ASP.NET中Textbox后的必填验证控件RequiredFieldValidator的使用方法。

    制作效果如下: 实现方法: 1. 拖动RequiredFieldValidator控件到相应的textbox后位置,点击属性面板,输入ErroMessage相应信息,更改ForeColor为红色 设置 ...

  5. Layui 必填验证

    lay-verify="required"

  6. Element 中表单非必填数据项 必须为数字的验证问题

    Element-ui 的el-form组建中,自带基本的验证功能,比如某些项必填的验证,直接加入rules 规则中即可,如下实例: 在页面中书写如下: <el-form-item label=& ...

  7. PHP 表单验证 - 必填字段

    -------------------------------------------------------------------------- 本节展示如何制作必填输入字段,并创建需要时所用的错 ...

  8. easyui-combogrid必填为空时无法通过表单验证的问题

    在使用easyui-combogrid时,由于html解析出的格式是如下三层: <td> <input id="txcombo" class="easy ...

  9. 验证页面多个input文本的必填项

    前台页面 JS : function CheckMustWrite(){ var count = $("input[mustwrite = 'true']", document.f ...

随机推荐

  1. PHP var_dump()函数输出不完整,有省略号?解决办法

    xdebug.var_display_max_children=10240xdebug.var_display_max_data=10240xdebug.var_display_max_depth=1 ...

  2. WPF:通过名字找控件

    var plotBorder = (Border)FindName(string.Format("PlotBorder{0}", i))

  3. jvm领域优秀博主

    dh5724 不过csdn iteye 博客园信息均被自己删除,只在一些问答中和引用中有部分信息. redcreen 对jvm有深入认知. RednaxelaFX oracle java 编译器开发者 ...

  4. Windows的四类消息

    Windows的三类消息1.标准消息宏名称 对映消息 消息处理函数(名称已由系统预设)ON_WM_CHAR WM_CAHR OnCharON_WM_CLOSE WM_CLOSE OnCloseON_W ...

  5. 201771010126王燕《面向对象程序设计(Java)》第三周学习总结

    实验三 Java基本程序设计(2) 实验时间 2018-9-13 1.实验目的与要求 (1)进一步掌握Eclipse集成开发环境下java程序开发基本步骤: (2)熟悉PTA平台线上测试环境: (3) ...

  6. (59)Wangdao.com第十天_JavaScript 对象在 栈和堆

    对象的属性值 如果要使用特殊的属性名,需 对象["属性名"] = 属性值       // 存 对象["属性名"]       // 取 obj["1 ...

  7. myeclipse使用git图文教程

    Git介绍与使用 1.什么是Git Git是分布式版本控制系统 Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. 2.集中式版本控制系统(CVS / SVN等) 集中 ...

  8. waitpid 函数详解

    关于Linux中waitpid函数的一些使用说明: #include<sys/types.h> #include<sys/wait.h> 定义函数 pid_t waitpid( ...

  9. AS中jar包和aar包区别及导入导出

    发布时间:2018-01-18 来源:网络 上传者:用户 关键字: 导出 导入 区别 包和 aar jar 发表文章 摘要:jar包和aar包区别*.jar:只包含class文件与清单文件,不包含资源 ...

  10. Dynamics365 WebAPI ADFS token 获取

    public class CrmAuth { ///<summary> /// Token /// </summary> public string access_token ...