2009-10-16 45 views
0

在一个ASP.NET MVC应用程序中,如果没有像ActiveX,Flash或Java Applets这样的客户端对象(JavaScript可以),可以想象当上传文件对话框弹出时,只显示我指定的文件?如何过滤哪些文件可以在上传对话框中看到?

例如,仅延长.DOCX或DOCX和JPG文件的将是可见和可选,在选择要上传的文件的开放文件一样对话框..

我已阅读,有一个问题与浏览器支持这个功能,虽然它应该与正确的设置一起工作?

如果我可以得到一些例子,并且有人能够提出这个问题,那就太好了。

AjaxControlKit会支持这种功能吗?

感谢,

里克

回答

2

,无法筛选哪些文件出现在文件上传对话框。这是依赖于浏览器的,没有浏览器提供这种功能。

但是,一旦文件被选中,它的值就可以使用JavaScript进行检查。您可以处理表单元素的提交事件,并将文件输入的值与正则表达式匹配。下面是一些未经测试示例代码:

<script type="text/javascript"> 
    function check(event) 
    { 
    if (!document.getElementById('file').value.match(/.*\.jpg/)) 
    { 
     alert('File must have .jpg extension. Please try again.'); 
     return false; 
    } 
    return true; 
    } 
</script> 

<form action="page.html" onsubmit="check"> 
    <input type="file" name="file" id="file"/> 
</form> 
+0

谢谢,它是我认为......好得到确认.. – 2009-10-16 06:07:42

2

输入元素支持的接受以现代浏览器如Chrome支持的属性:

<input id="file" type="file" name="file" size="30" 
accept="image/jpg,image/png,image/jpeg,image/gif"> 

可悲的是,这是不是IE浏览器,甚至没有IE9支持。

问候, 马丁科尔多瓦 www.martincordova.com Dinamica - 与基于Eclipse的Web应用程序生成的Java EE/AJAX/SQL框架。

相关问题