可以用js在onchange里面过滤吧···
OpenFileDialog ofd = new OpenFileDialog();
//过滤文件类型
ofd.Filter = "文本文件(*.txt)|*.txt|日志文件(*.log)|*.log";
//显示名称
ofd.Title = "选择待分析日志文件";
ofd.InitialDirectory = Application.StartupPath;
//设置为可多选文件
ofd.Multiselect=true;
//设置打开对话框的默认位置
ofd.InitialDirectory = @"C:\Documents and Settings\Administrator\Application Data\SE_logs";
IE下得用ActiveXObject
<script type="text/javascript">
function openfile() {
try {
var fd = new ActiveXObject("MSComDlg.CommonDialog");
fd.Filter = "图像文件 (*.jpg;*.jpeg;*.gif)|*.jpg;*.jpeg;*.gif";
fd.FilterIndex = 2;
// 必须设置MaxFileSize. 否则出错
fd.MaxFileSize = 128;
fd.ShowOpen();
document.getElementById("txtFileName").value = fd.Filename;
document.getElementById("textImage").src = fd.FileName;
} catch (e) {alert("你的浏览器不支持ActiveX!\r\n请启用ActiveX后重试.");document.getElementById("txtFileName").value = "";}
}
</script>
<input type="text" id="txtFileName" size="50" readonly="readonly" /><input type="button" onclick="openfile()" value="Browse..." />
<img id="textImage" alt=""/>
如果想要兼容的话建议用swfupload flash上传组件吧...
html的 input file是没有这个功能的。用flash上传吧 楼上的swfupload 不错