删除复选框的"已选中"属性

Fab*_*hor 45 javascript jquery ios jquery-mobile cordova

发生错误时,我需要删除一个复选框的"已检查"属性.

.removeAttr函数不起作用.任何的想法?:/

HTML

<div data-role="controlgroup" data-type="horizontal" data-mini="true" style="margin-left: auto; margin-right: auto; width: 100%; text-align: center;">
    <input type="checkbox" id="captureImage" name="add_image" class="custom" />
    <label for="captureImage" data-icon="checkbox">Image</label>
    <input type="checkbox" id="captureAudio" name="add_audio" class="custom" />
    <label for="captureAudio" data-icon="checkbox">Audio</label>
    <input type="checkbox" id="captureVideo" name="add_video" class="custom" />
    <label for="captureVideo" data-icon="checkbox">Video</label>
</div>
Run Code Online (Sandbox Code Playgroud)

使用Javascript

$("#captureImage").live("change", function() {
    // $("#captureImage").prop('checked', false); // Here Work

    if($("#captureImage:checked").val() !== undefined) {
            navigator.device.capture.captureImage(function(mediaFiles) {
            console.log("works");
        }, function(exception) {
            $("#captureImage").prop('checked', false); // Not Works Here
            _callback.error(exception);
        }, {limit: 1});
    }
});

/*
$("#captureAudio").live("change", function() {
    if($("#captureAudio:checked").val() !== undefined) {
            navigator.device.capture.captureAudio(function(mediaFiles) {
            console.log("audio");
        }, function() {
            $("#captureAudio").removeAttr('checked');
            _callback.error;
        }, {limit: 1});
    }
});

$("#captureVideo").live("change", function() {
    if($("#captureVideo:checked").val() !== undefined) {
            navigator.device.capture.captureVideo(function(mediaFiles) {
            console.log("video");
        }, function(exception) {
            $("#captureVideo").prop('checked', false);
            _callback.error(exception);
        }, {limit: 1});
    }
});
*/
Run Code Online (Sandbox Code Playgroud)

ale*_*lex 83

尝试...

$("#captureAudio").prop('checked', false); 
Run Code Online (Sandbox Code Playgroud)


its*_*zad 56

这两个都应该工作:

$("#captureImage").prop('checked', false);
Run Code Online (Sandbox Code Playgroud)

AND/OR

$("#captureImage").removeAttr('checked');
Run Code Online (Sandbox Code Playgroud)

......你可以一起试试.

  • **NOTE**每[.prop( '检查',假)或.removeAttr( '检查')?(/sf/ask/431887851/),即**`.prop("选中",false"`**总是优于`.removeAttr("checked")` (3认同)

A. *_*ães 6

试试看这个

$('#captureImage').attr("checked",true).checkboxradio("refresh");
Run Code Online (Sandbox Code Playgroud)

并取消选中

$('#captureImage').attr("checked",false).checkboxradio("refresh");  
Run Code Online (Sandbox Code Playgroud)


Lov*_*dey 5

我在发生错误时使用 propunchecked属性checkbox。您不需要使用删除属性来取消选中复选框。

$('input#IDName').prop('checked', false);
Run Code Online (Sandbox Code Playgroud)

它对我来说工作得很好。希望它也对你有用。