-1

ファイルをアップロードする前にファイルのサイズと拡張子をチェックしていますが、(ほとんどの場合) コードは正しく実行されています。ただし、ファイルの拡張子が正しく、2MB 未満の場合、送信ボタンから無効化された属性を削除できません。見たり忘れたりしていない小さな何かがあるように感じます。助けやヒントをいただければ幸いです。

ありがとう -
カイル

これが私のコードです:

<p>Select a logo to upload</p>
<input type="file" id="uploadFile" class="upload" name="upfile"><br>
<input type="submit" id="uploadSubmit" value="Upload Image" disabled="disabled">



document.getElementById("uploadFile").addEventListener("change", checkFile, true);
function checkFile(e) {
    var files = e.target.files;
    for (var i = 0, file; file = files[i]; i++) {
        var fileName = file.name;
        var fileExt = fileName.split(".")[fileName.split(".").length - 1].toLowerCase();
        var fileSize = document.getElementById("uploadFile").files[0].size;
        var fileSizeMB = (file.size / 2097152).toFixed(2);
        if (!(fileExt === "jpg" || fileExt === "eps" || fileExt === "tif" || fileExt === "tiff") || fileSize > 2097152) {
            alert("There is an error with the file you selected. Please check the file size and/or the file type.");
        } else {
        $("#uploadSubmit").prop("disabled", false);
        }
    }
};
4

4 に答える 4

1

試す

$("#uploadSubmit").removeAttr("disabled");

それが役に立てば幸い。

于 2014-01-13T22:33:14.273 に答える
0

$("#element").attr("disabled", false) または $("#element").removeAttr("disabled"). この最初の例が、新しい jQuery バージョンで改善されることを願っています。

于 2014-01-14T00:26:24.930 に答える
0

申し訳ありませんが、少なくとも 50 の評判が必要なため、コメントすることはできません。

jQuery があるかどうかを確認してください。最初に getElementById を使用していて、uplaodSubmit に jQuery セレクターを使用していることに気付きました。それ以外は、構文は正しいように見えます。

また、純粋な JS を使用したい場合は、次を使用します。

document.getElementById('uploadSubmit').disabled = false

代わりは。

幸運を。

于 2014-01-13T22:42:40.320 に答える