当我运行此功能时,CSS将应用于所有按钮。如何进行修改,以便仅针对buttonAttr属性等于禁用的按钮修改CSS?
$('.product_tile .addtocartbutton').each(function(){
var $this = $(this);
var buttonAttr = $this.attr('disabled');
if($this.attr('disabled') = 'disabled'){
$this.css('background','#ccc');
} else {
$this.css('background','#EEDED1');
}
});
答案 0 :(得分:3)
您不应使用@Override
public void onBindViewHolder(final RecyclerViewHolder holder, final int position) {
final Note note = noteList.get(position);
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// The note and noteList can be accessed here.
}
});
}
函数检查布尔属性。请改用attr
来返回实际值。
prop
答案 1 :(得分:2)
您需要两个或三个等号才能进行比较。
if($this.buttonAttr == 'disabled')
答案 2 :(得分:1)
不需要编写长代码只需使用此
$(':button[disabled="disabled"]').css('background','#ccc');
或
$('.product_tile .addtocartbutton :button[disabled="disabled"]')).css('background','#ccc');
取决于您的方案。
使用:按钮适用于按钮和输入类型="按钮"
答案 3 :(得分:0)
我建议这个小修改;
$('.product_tile .addtocartbutton').each(function(){
var $this = $(this);
if($this.is(":disabled")){
$this.css('background','#ccc');
} else {
$this.css('background','#EEDED1');
}
});
这利用了jquery :disabled
选择器link来提供文档。
编辑:
另一种选择是单独的CSS解决方案,利用attribute selector
input[type='button'] {
background: #eeded1;
}
input[type='button'][disabled] {
background: #ccc;
}
<input type='button' value='Disabled' disabled='disabled' /><br /><br />
<input type='button' value='Active' />