jQuery Filer:如何在我的表单上禁用/启用

时间:2016-11-30 21:59:32

标签: jquery jquery-plugins jquery-filer

您好我在我的页面上实现了带有文件上传框的表单。我决定使用jQuery Filer插件,效果很好。我希望能够根据单选按钮禁用或启用文件上传器,但无法弄清楚如何禁用该插件的功能。

任何帮助都会很棒。

不确定要包含哪些代码,使用输入调用文件上传器本身:

<input type="file" name="files[]" id="file_uploader" disabled="true" multiple="multiple">

我尝试不起作用的是:

$('#file_uploader).disabled = 'disabled';

虽然没有工作......想法?

仍然没有工作!

这是我现在拥有的代码:

function enable_img(status){
    if (status=='true'){
            $("#img_desc").prop('disabled', false);
            $("#img_desc").attr("placeholder", "Add a description for image(s)");
            $("#img_file").prop("disabled", false);
    } else {
            $("#img_desc").prop("disabled", true);
            $("#img_desc").attr("placeholder", "");
            $("#img_desc").val("");
            $("#img_file").prop("disabled", true);

    }*/
}

和html部分:

<div class="form-group">
    <label for="img_req" class="col-md-3 control-label">Do you want to add an image??</label>
    <div class="col-md-8">
        <div class="btn-group" data-toggle="buttons" id="img_req">
            <label class="btn btn-primary">
                <input type="radio" name="options" id="img_yes" autocomplete="off" onchange="enable_img('true');"> Yes
            </label>
            <label class="btn btn-primary active">
                <input type="radio" name="options" id="img_no" autocomplete="off"  onchange="enable_img('false')" checked> No
            </label>
        </div>
        <br></br>
        <textarea class="form-control" rows="3" id="img_desc" placeholder="" disabled="true"></textarea>
    </div>
    <label for="img_file" class="col-md-3 control-label">Image File(s)</label>
    <div class="col-md-8">
        </br>
        <div class="input-group">
            <input type="file" name="files[]" id="img_file" disabled="true" multiple="multiple">
        </div>
    </div>
</div>

#img_desc改变正常,并按预期启用了diasbled并启用,但#img_file没有任何反应。任何帮助都会很棒!

1 个答案:

答案 0 :(得分:0)

  1. 您应该在要禁用的元素上使用prop功能。
  2. 我想你想在勾选/取消选中一个复选框时发生这种情况,所以我也为此添加了一个例子。
  3. $('#chk1').on('change', function() {
       $('#file_uploader').prop('disabled', !$(this).is(':checked'));
    });
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    
    <input type="checkbox" id="chk1" /> enable/disable<br />
    
    <input type="file" name="files[]" id="file_uploader" disabled="true" multiple="multiple">