如果没有选择上传文件,如何从复选框中删除支票?

时间:2013-11-22 20:06:28

标签: javascript jquery

HTML

<label for="desktop_dimension_id">Desktop dimensions:</label>
            <span class="checkbox" id="desktopCheckboxId">
                <span class="checkbox_value">
                    <input id="dc1280_800" type="checkbox" name="1280x800"> 1280x800</span>
                    <input id="db1280_800" class="desktop_disabled" type="file" name="desktop_path_1280x800" size="100" />
                <span class="checkbox_value">
                    <input id="dc1366_768" type="checkbox" name="1366x768"> 1366x768</span>
                    <input id="db1366_768" class="desktop_disabled" type="file" name="desktop_path_1366x768" size="100" />
                <span class="checkbox_value">
                    <input id="dc1920_1080" type="checkbox" name="1920x1080"> 1920x1080</span>
                    <input id="db1920_1080" class="desktop_disabled" type="file" name="desktop_path_1920x1080" size="100" />
            </span>

        <input id="desktopCheckbox" type="checkbox" name="type[]" value="1">Desktop

JAVASCRIPT

$(document).ready(function() {
        var selected = $('#desktopCheckboxId input[type=file]');
        selected.change(function(){
            $('#desktopCheckbox').prop('checked', true);
        });
    });

jsFiddle

如果选择上传任何文件,则上面是检查桌面复选框的代码。但问题是我想在没有选择文件时从复选框中删除检查。

1 个答案:

答案 0 :(得分:3)

selected.change(function(){
    $('#desktopCheckbox').prop('checked', this.files.length>0);
});

this.files是一系列选定的文件。

请参阅我更新的JSFiddle