這是一個工作上遇到的小 bug,這邊簡單記錄一下。
因為工作上會需要限制使用者上傳的檔案副檔名,而其中又有類似 .tar.gz
這樣的雙重副檔名。
本來是直接寫 <input accpet='.abc, .def, .tar.gz'
想說應該可以限制使用者只上傳 .tar.gz 的檔案。
結果發現反而沒辦法選 .tar.gz
的檔案。
查了一下發現 .tar.gz
只是一個慣例的命名習慣,不是正式的副檔名。所以 input 的 accpet 對於這種雙重副檔名的支援也是各自表述。
要解決這個問題就必須把限制變成 .gz
,然後在 onChange handler 或 form 的 onSubmit handler 中自行實作 validator。