3

このトピックはこのフォーラムでカバーされていますが、動作する IE ソリューションをまだ見つけていません (7、8、9 でテスト済み)。他のブラウザでは正常に動作します。誰かがそれに対する解決策を持っていることを願っています。前もって感謝します!

何のことですか:

標準のファイル入力要素を取り除きたいので、画像を追加しました。クリックすると、参照ウィンドウが表示されます。ファイルが選択されると、フォームが送信されます。ブラウザのセキュリティのため、ファイル入力要素を一時的に表示し、フォーカスして非表示にします。

問題:

IE で「アクセスが拒否されました」と表示されます。jquery.1.7.2.js 行 3241、文字 6。表示/非表示のトリックがなければ、問題は残ります。参照ボタンをクリックしてファイルを選択すると、フォームが送信されます。問題は、ファイルの参照アクションが別の要素によってトリガーされることです。

完全なコード:

    $('#fakeupload').click(function(){
        $('#form').show();
        $('#realupload').focus().trigger('click');
        $('#form').hide();          
    });

    $('#realupload').change(function(){
        $('#form').show();
        $('#form').submit();
        $('#form').hide();          
    });
4

3 に答える 3

1

Internet Explorer 8 は、Microsoft のあまり賢くない人々のグループが決定を下したため、「アクセスが拒否されました」であなたをブロックしています。

入力タイプのファイルでクリック メソッドをトリガーしようとすると、後で送信時に問題が発生します。

これは、そのようなことを行う唯一のブラウザです。

Microsoft に感謝します。ブラウザは「作品」です >:(

于 2012-07-25T19:12:28.297 に答える
0

これは解決できない問題のままです。これを機能させるには、ユーザーが参照ボタンをクリックする必要があります。ここでのコツは、画像に合うように参照ボタンを変更することです。

于 2012-06-27T08:16:16.697 に答える
0

ブラウザがファイルにアクセスできるように、アクセス許可を割り当ててみましたか? キャッシュをクリアしましたか?有効期限を設定してみては?show()/hide() を css("display","block")/css("display","none") に置き換えてみてください

于 2012-06-06T20:13:31.913 に答える