0

简单的问题,所以我确保在发布之前尝试了很多解决方案。我有一个复选框,我似乎无法启用它。

使用 vanilla JS,我尝试删除该属性,并将禁用标志设置为 false,并且还使用 jQuery,我尝试使用 Prop 没有成功。

'''html

<input type="checkbox" id="chkAllowToAdminService" name="chkAllowToAdminService" disabled="disabled" data-init-plugin="switchery">

'''

我尝试了以下方法,但都没有工作(香草 JS 和 jQuery)

'''

document.getElementById('chkAllowToAdminService').disabled = false;
document.getElementById('chkAllowToAdminService').removeAttribute('disabled);
$('#chkAllowToAdminService').prop("disabled", false);

'''

根本没有错误消息,似乎什么都没有发生。

4

3 回答 3

0

我想你可能有两个问题:

  1. 确保您具有元素的唯一 ID,'chkAllowToAdminService'没有其他元素具有相同的 ID。

  2. 在您的删除属性 syntex 中:document.getElementById('chkAllowToAdminService').removeAttribute('disabled); 我可以看到'最后缺少引号。

于 2019-07-25T04:29:27.143 回答
0

要删除属性,您可以使用removeAttribute(name)。在你的情况下:


const checkbox = document.querySelector('#chkAllowToAdminService')

checkbox.removeAttribute('disabled')

设置属性setAttribute(name, value)

于 2019-07-25T03:59:06.320 回答
0

// 在 jQuery 中

$('#chkAllowToAdminService').attr('disabled','disabled'); // Add disabled
$('#chkAllowToAdminService').removeAttr('disabled',''); // Remove disabled

// 或者

$("#chkAllowToAdminService").attr("disabled",true);
$("#chkAllowToAdminService").attr("disabled",false);

// 在 JavaScript 中

document.getElementById("chkAllowToAdminService").disabled = true;
document.getElementById("chkAllowToAdminService").disabled = false;
于 2019-07-25T03:01:13.363 回答