[英]jQuery - Can't add a class to a button with an onClick event
我正在尝试将类添加到具有onClick
事件的按钮。 onClick
事件触发弹出alert
,告知用户选中一个框。 检查一个框后,它会禁用onClick
: $("#continue").prop('onclick',null).off('click');
禁用onClick
,我想在单击按钮后向该按钮添加一个class
:
//Updated JS
jQuery(function($) {
if ($("#continue").hasClass("selected")) {
$(this).addClass('active');
}
$('#button').click(function(){
$("#continue").addClass('selected');
$("#continue").prop('onclick',null).off('click');
});
});
//Button HTML
<a id="button" href="javascript:void(0)">Pick me</a>
<a id="continue" href="javascript:void(0)" onclick="showError()">Continue</a>
但没有增加任何class
。 不知道最近发生了什么。
也许你可以触发一个函数来验证元素是否具有如下所需的类:
function validate(element) { if ($(element).hasClass('selected')) { $(element).addClass('active'); } else { alert("this is an error"); } } $(function() { $('#button').click(function() { $("#continue").addClass('selected'); }); });
.selected { color: red; } .active { color: green; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <a id="button" href="javascript:;">Pick me</a> <a id="continue" href="javascript:;" onclick="validate(this)">Continue</a>
你应该写$(this)
而不是$ this
$('#button').click(function(){
$this.addClass("active");
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.