javascript開啟選擇對話方塊/儲存對話方塊

來源:互聯網
上載者:User
在瀏覽器中雖然開啟選擇對話方塊和儲存檔案對話方塊的功能並不常使用,但有時仍然會用得上,比如一個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="儲存" onclick="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應用程式了。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.