formのenctypeの変更
http://d.hatena.ne.jp/babydaemons/20080520/1211278047 でファイルをアップロードするときにenctypeに"multipart/form-data"を指定することを書いたが、逆にアップロードしない場合はクラシックASPのRequest.Formでフォームの情報が読めなくなるので、"multipart/form-data"をenctypeに指定できない。
では、アップロードするときにのみenctypeを再設定するようにすれば良いはずだが、IEでは再設定されていないような振る舞いだった。
function upload() { var myForm = document.getElementById("myForm"); myForm.enctype = "multipart/form-data"; // これで良いはずなんだけど… myForm.action = "upload.asp"; myForm.submit(); }
仕方ないのでフォームを2つ使うように作り変えたが、画面仕様的には見た目フォームひとつなので、CSSでstyle="position:relative;top:-100px;left:-100px"とかやってつじつま合わせした。
なんだかなー。