我在网页上使用 jQuery Uploadify 插件将文件从本地计算机传输到 ASP.NET MVC2 控制操作方法。有没有办法将文件的创建日期/时间传输到服务器?
我可以在客户端的 Uploadify 事件中获取数据,但无法弄清楚如何“打包”该数据以便将其移动到带有文件的服务器。
任何想法表示赞赏。
最佳答案
尝试使用 onSelect将值添加到 scriptData 的事件对象。
更新:以下是将数据传递给操作的临时 View 。 modificationDate
似乎在它的 time
字段中返回一个 Unix 时间戳,您必须在服务器端转换它。我找不到有关 modificationDate
属性的任何文档。
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Home</title><link href="/Scripts/uploadify.css" type="text/css" rel="stylesheet" />
<script type="text/javascript" src="/Scripts/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="/Scripts/swfobject.js"></script>
<script type="text/javascript" src="/Scripts/jquery.uploadify.v2.1.4.min.js"></script>
<script type="text/javascript">
var myScriptData = {};
$(document).ready(function () {
$('#file_upload').uploadify({
'uploader': '/Scripts/uploadify.swf',
'script': '/Test/Upload',
'cancelImg': '/Scripts/cancel.png',
'folder': '/App_Data',
'auto': true,
'onSelect': function (event, ID, fileObj) {
$('#file_upload').uploadifySettings('scriptData', {
modifiedTimestamp: fileObj.modificationDate.time
});
return true;
}
});
$('#file_upload').uploadifySettings('scriptData', myScriptData);
});
</script>
</head>
<body>
<input id="file_upload" name="file_upload" type="file" />
</body>
</html>
在您的操作方法中,您可以通过 Request.Form["modifiedTimestamp"]
获取时间戳。检查here关于如何将时间戳转换为 DateTime 对象。
关于javascript - 如何在服务器上为 jQuery/uploadify 获取文件创建日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4496160/