1

アップロードするものが選択されるまで、アップロード ボタンを無効にするコード スニペットがあります。IE9 Beta では動作しないことに気付きました。IE用にもっと繰り返す必要がありますか? これが私のコードです:

$("input:file").change(function(){
    if ($(this).val()) {
        $("input:submit").attr("disabled",false);
    }
});

アップデート:

アラートを追加するようにコードを変更しました。

$("input:file").change(function(){
    alert("...");
    if ($(this).val()) {
        $("input:submit").removeAttr("disabled");
    }
});

FF アラートではボタンが有効になり、IE アラートではトリガーされません。

もう1つの更新:

問題はコードを変更せずに進行しました。IE9 では、Web アドレス フィールドの横に「COMPATIBILITY VIEW」の新しいアイコンがあります。クリックして有効にし、もう一度クリックして無効にすると、問題はなくなりました。私の推測では、IE は何らかの方法で jQuery をブロックし、キャッシュしました。互換性設定を変更することで、キャッシュされた設定を削除した可能性があります。変!

4

4 に答える 4

3

$("input:submit").attr("disabled","disabled");を使用して無効にしてみてください$("input:submit").removeAttr("disabled")

于 2011-02-07T16:37:25.407 に答える
0

セキュリティ上の理由から、ファイル入力の値にアクセスできないブラウザがあります。明らかにIE9もあります。

于 2011-02-07T16:39:13.700 に答える
0

これを行う方法を示す私のウェブサイトからの詳細なチュートリアルは次のとおりです: jQuery disable button。簡単に言えば、jQuery を使用してボタンを無効にする最良の方法は、次のコードを使用することです。

$('.buttonElement').attr('disabled', 'disabled'); //TO DISABLED
$('.buttonElement').removeAttr('disabled'); //TO ENABLE

これが誰かを助けることを願っています。

于 2013-01-30T08:19:36.270 に答える
0

これは、コントロールを無効または再度有効にするために使用するコードです。

function handleControlDisplay(className, foundCount, checked) {



    var button = jQuery(className);



    if (foundCount > 0 && foundCount == checked) {

        // enable

        button.removeAttr("disabled");

    }

    else {

        // set the disabled attribute

        button.attr("disabled", "true");

    };

}
于 2011-04-30T12:49:00.890 に答える