ブラウザの標準的なファイル アップロード フォームではなく、典型的な html ボタンのように見えるようにフォーマットされたアップロード ボタンを作成しました。アプローチは、アンカー要素のスタイルを設定し、その上に透明なファイル入力要素をオーバーレイすることでした。
このアプローチは、IE 以外のすべてのブラウザーで正常に機能します。IE では、ユーザーがアップロード ボタンをクリックすると、ユーザーがテキスト入力ボックスをクリックしたかのようにテキスト カーソルが表示されます。ユーザーは、ボタンをダブルクリックして、ファイル アップロード ダイアログをトリガーできます。しかし、これは私たちが望んでいる、または誰もが期待している動作ではありません。
なぜこれが起こっているのか、私は途方に暮れています。ここで問題を示すjsfiddleをセットアップしました: http://jsfiddle.net/davelee/yfSmc/3/