Javascript 动态禁用的按钮在视觉上没有变化?
所以基本上我们有一个按钮,当点击时,它的值应该改变,应该被禁用。我们的按钮从Javascript 动态禁用的按钮在视觉上没有变化?,javascript,php,jquery,ajax,yii,Javascript,Php,Jquery,Ajax,Yii,所以基本上我们有一个按钮,当点击时,它的值应该改变,应该被禁用。我们的按钮从 到 不幸的是,在刷新页面之前,按钮不会在视觉上改变。我们正在使用$(this).attr(“disabled”,“disabled”)更改按钮。我们还尝试了$(this).prop(“disabled”,true)和$(this).prop(“disabled”,“disabled”)这两种方法似乎都不起作用。如果您熟悉Yii,整个按钮代码如下所示: echo CHtml::ajaxButton(
到
不幸的是,在刷新页面之前,按钮不会在视觉上改变。我们正在使用$(this).attr(“disabled”,“disabled”)
更改按钮。我们还尝试了$(this).prop(“disabled”,true)
和$(this).prop(“disabled”,“disabled”)
这两种方法似乎都不起作用。如果您熟悉Yii,整个按钮代码如下所示:
echo CHtml::ajaxButton(
'save',
Yii::app()->createUrl('dashboard/savelink'),
array( // ajax options
'type' => 'POST',
'context' => "js:this",
'success' => 'js:function() {$(this).attr("disabled", "disabled"); $(this).val("saved") ;}',
'data' => array(
'commentLink' => $commentLink
)
),
array(
'class'=>'saveButton'
)
);
提前感谢,
J我认为您应该在ajax的beforeSend选项中添加$(this).attr(“disabled”,“disabled”)
echo CHtml::ajaxButton(
'save',
Yii::app()->createUrl('dashboard/savelink'),
array( // ajax options
'type' => 'POST',
'context' => "js:this",
'beforeSend => js: function(){$(this).attr("disabled", "disabled"); },
'success' => 'js:function() { $(this).val("saved") ;}',
'data' => array(
'commentLink' => $commentLink
)
),
array(
'class'=>'saveButton'
)
);
使用禁用的伪代码。这就是浏览器通常更改禁用输入或按钮的外观的方式:disabled
。将样式设置为您的首选项。尽管如此,还是要将其放入全局css或正在使用的css文件中
input:disabled, button:disabled{
color:graytext;
background: buttonface;
border:1px solid;
}
嘿,谢谢你的回答。不幸的是,样式仍然没有改变(属性仍然被添加)。对于禁用的按钮,您可以在css文件中使用:disabled
伪元素。尽管如此,它只适用于支持CSS3选择器的浏览器input:disabled{color:graytext;background:buttonface;border:1px solid;}
查看此线程[我认为您有相同的问题。-不可复制