我不得不从输入字段中删除disabled="disabled"
属性。
这是我尝试过的三种jQuery方法:
jQuery('.db_single_lesson .ld-breadcrumbs:first input[type=submit]').removeAttr('disabled');
jQuery('.db_single_lesson .ld-breadcrumbs:first input[type=submit]').prop('disabled', false);
jQuery('.db_single_lesson .ld-breadcrumbs:first input[type=submit]').removeProp('disabled');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="submit" value="Mark Complete" class="abcd" disabled="disabled">
但是无法删除disabled="disabled"
属性。谁能告诉我出了什么问题,或者如何删除禁用的属性?
谢谢
答案 0 :(得分:0)
让我们看看选择器...
.db_single_lesson .ld-breadcrumbs:first input[type=submit]
此代码正在寻找一个带有db_single_lesson
的元素,其中包含另一个带有ld-breadcrumbs
类的元素,其第一个输入是提交类型。您没有这两个包含类。我已经添加了它们,并且您第一次尝试使用removeAttr()
的解决方案现在可以正常工作...
jQuery('.db_single_lesson .ld-breadcrumbs:first input[type=submit]').removeAttr('disabled');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="db_single_lesson">
<div class="ld-breadcrumbs">
<input type="submit" value="Mark Complete" class="abcd" disabled="disabled">
</div>
</div>
答案 1 :(得分:0)
在jQuery中启用按钮的正确方法是:
$('proper selector').prop('disabled', true);
您似乎未正确选择按钮,请尝试添加ID以供选择以单独测试解决方案。接下来,为了进行测试-更改按钮上的颜色,以确保您选择正确。
根据您的选择器,我会尝试
$('input.abcd').prop('disabled', true);
答案 2 :(得分:0)
可以选择.first()
jQuery('.db_single_lesson .ld-breadcrumbs input[type=submit]').first().removeAttr('disabled');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<div class="db_single_lesson">
<div class="ld-breadcrumbs">
<input type="submit" value="Mark Complete" class="abcd" disabled="disabled">
</div>
<div class="ld-breadcrumbs">
<input type="submit" value="Mark Complete" class="abcd" disabled="disabled">
</div>
</div>
答案 3 :(得分:-1)
尝试致电
$('.db_single_lesson .ld-breadcrumbs:first input[type=submit]').prop('disabled', '');
这应该从您的元素中删除已禁用的标签。
这假定 .db_single_lesson .ld-breadcrumbs:first input [type = submit] 是所需元素的正确选择器。从您的问题尚不清楚这对您的按钮是否正确。
从您的问题来看,只有这行可能是这样的
$('input[type=submit]').prop('disabled', '');
答案 4 :(得分:-1)
选择器没有问题。我正在为选择器获取length=1
。问题是其他脚本正在覆盖我的jquery脚本,因此无法正常工作。因此,我用setTimeout
将脚本包含在delay
函数中,以获得所需的结果。
setTimeout(function(){
jQuery('.db_single_lesson .ld-breadcrumbs:first input[type=submit]').removeAttr('disabled');
}, 500);
谢谢