我有这个是为了用readonly替换属性disabled,我想知道是否有可能不对某些类执行此操作。我想添加类似“如果输入没有类x执行动作”的内容
$('input[type=text][disabled="disabled"]').removeAttr("disabled").attr("readonly", true);
答案 0 :(得分:3)
您可以使用not
方法从匹配的集合中排除元素:
$('input[type=text][disabled="disabled"]').not(".someClass").removeAttr("disabled").attr("readonly", true);
或者,您可以使用:not
伪选择器,但正如文档所述,.not
方法在大多数情况下更好“。
作为旁注,您应该使用prop
方法而不是attr
,因为disabled
和readonly
都是DOM属性。
答案 1 :(得分:1)
使用:not(.x)
伪选择器。
$('input[type=text][disabled="disabled"]:not(.x)')
.removeAttr("disabled").attr("readonly", true);
您可以像这样简化它。
$('input:text:disabled:not(.x)')
.removeAttr("disabled").attr("readonly", true);
答案 2 :(得分:1)
使用not()和prop()应该这样做;
$('input[type="text"]:disabled').not('.className')
.prop('disabled', false).prop('readonly', true);
答案 3 :(得分:1)
$('input[type=text][disabled="disabled"][class!="yourClass"]').removeAttr("disabled").attr("readonly", true);
也应该有用