在浏览器中虽然打开选择对话框和保存文件对话框的功能并不常使用,但有时仍然会用得上,比如一个web版的播放器,让用户选择本地的视频或音频文件等。对于打开选择文件对话框来说,相对比较简单,只需要在页面内放一个file标签,可以将其display设置为none,使用图片、按钮及链接来模拟file的单击事件,从而实现选择文件的任务。具体实现如下所示:
<html>
<head>
<title> New Document </title>
</head>
<body>
<input type="file" id="file" style="display:none">
<input type="button" value="click" onClick="ok()">
</body>
<script language="JavaScript">
<!-- function ok(){ var s = document.getElementById("file"); s.click(); var str = s.value;//获取 文件路径 alert(str);//在这里你可以进行自己的工作 } //-->
</script>
</html>
对于打开保存文件对话框可以使用MSComDlg.CommonDialog对象,并且可以设置类型过滤,但是需要设置MaxFileSize属性,否则会出现错误。其具体实现如下所示。
<html>
<head>
<title> New Document </title>
</head>
<body>
<input type="button" value="保存" οnclick="document.execCommand('SaveAs')">
</body>
<script language="JavaScript">
<!-- function SaveAs() {
var fileSave = new ActiveXObject
("MSComDlg.CommonDialog");
fileSave.Filter = "mp3";
fileSave.FilterIndex = 2; // 必须设置MaxFileSize. 否则出错
fileSave.MaxFileSize = 128;
fileSave.ShowSave();
} //-->
</script>
</html>
提示:你可以先修改部分代码再运行 总体感觉打开选择文件对话框还是比较有用的,但是保存对话框,恩,觉得没什么太大的用处,如果真的需要用户保存大量文件的话,可能就会采用windows应用程序了。